文章目錄
- 引言:
- 移動云:云擎未來,智信天下
- 一、什么是Redis?
- 二、Redis 與其他 key-value 存儲有什么不同?
- Redis 架構
- 三、環境準備
- 四、部署流程
- 使用Redis Desktop Manager遠程連接操作數據庫
- 總結與未來展望
- 云擎未來,智信天下
引言:
隨著技術的不斷進步,移動云服務不僅重塑了我們的工作方式和生活習慣,還為各行各業帶來了前所未有的機遇。它使得數據和應用能夠跨越物理界限,實現隨時隨地的訪問和處理,極大地提高了工作效率和靈活性。
移動云:云擎未來,智信天下
一、什么是Redis?
Redis是一個完全開源免費的高性能(NOSQL)的key-value數據庫。它遵守BSD協議,使用ANSI C語言編寫,并支持網絡和持久化。Redis擁有極高的性能,每秒可以進行11萬次的讀取操作和8.1萬次的寫入操作。它支持豐富的數據類型,包括String、Hash、List、Set和Ordered Set,并且所有的操作都是原子性的。此外,Redis還提供了多種特性,如發布/訂閱、通知、key過期等。Redis采用自己實現的分離器來實現高速的讀寫操作,效率非常高。Redis是一個簡單、高效、分布式、基于內存的緩存工具,通過網絡連接提供Key-Value式的緩存服務。
Redis可以通過配置文件設置密碼參數,這樣客戶端連接到Redis服務就需要密碼驗證,從而提高Redis服務的安全性。
Redis有三個主要特點,使它優越于其他鍵值數據存儲系統:
- 首先,Redis將其數據庫完全保存在內存中,僅使用磁盤進行持久化。這使得Redis具有很高的讀寫性能。
- 其次,Redis支持多種數據結構,不僅僅支持簡單的key-value類型的數據,還提供了list、set、zset和hash等更復雜的數據結構的存儲。
- 最后,Redis支持數據的備份,可以通過master-slave模式進行數據備份,增加了數據的可靠性和安全性。
Redis還可以用于內存存儲和持久化,支持異步將內存中的數據寫到硬盤上,同時不影響繼續服務取最新N個數據的操作。此外,Redis還可以用于模擬類似于HttpSession這種需要設定過期時間的功能,發布和訂閱消息系統,以及定時器和計數器等功能。
二、Redis 與其他 key-value 存儲有什么不同?
- Redis 比起其它鍵值類數據庫,值可以包含更復雜的數據類型,并且在數據類型上定義原子操作。Redis 數據類型與基本數據結構密切相關,并直接向程序員公開,無需額外的抽象層。
- Redis 運行在內存中但是可以持久化到磁盤,因此它代表了一種不同的權衡,即在數據集不能大于內存的限制下實現非常高的寫入和讀取速度。內存數據庫的另一個優點是,與磁盤上的相同數據結構相比,復雜數據結構的內存表示更易于操作,因此 Redis 可以做很多事情而內部復雜性很小。同時,因 RDB 和 AOF 兩種磁盤持久化方式是不適合隨機訪問,因為它們是順序寫入的。
Redis 架構
Redis 主要由有兩個程序組成:
- Redis 客戶端 redis-cli
- Redis 服務器 redis-server
三、環境準備
移動云云服務器一臺:
- 規格配置
t2.large.2 | 2 核 | 4G - 鏡像
Ubuntu 18.04 64位 - 系統盤
性能優化型 | 40G
四、部署流程
1,更新系統源
如果系統本身自帶得鏡像地址,服務器在國外,下載速度會很慢,可以打開 /etc/apt/sources.lis 替換為國內得鏡像源。
sudo apt update
sudo apt upgrade -y
2、安裝Docker,
apt-get install docker.io -y
# 設置開機啟動并啟動docker
sudo systemctl start docker
sudo systemctl enble docker
3、 下載Redis鏡像
命令 | 描述 |
---|---|
docker pull redis | 下載最新版Redis鏡像 (其實此命令就等同于 : docker pull redis:latest ) |
docker pull redis:xxx | 下載指定版本的Redis鏡像 (xxx指具體版本號) |
4、檢查當前所有Docker下載的鏡像
5、 創建Redis配置文件
在部署 Docker 容器中的 Redis 服務時,在 /etc/redis 目錄創建 redis.conf 配置文件。如果這個文件不存在,Docker 可能會錯誤地將 redis.conf 解釋為一個目錄,而不是一個文件,從而導致配置錯誤和啟動失敗。
## 創建目錄
mkdir -p /home/redis/conf
## 創建文件
touch /home/redis/conf/redis.conf
6、創建Redis容器并啟動
# 執行命令:
docker run --name redis -p 6379:6379 \
-v /home/redis/data:/data \
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis:bullseye redis-server /etc/redis/redis.conf
命令說明
命令 | 描述 |
---|---|
–name redis | 啟動容器的名字 |
-d | 后臺運行 |
-p 6379:6379 | 將容器的 6379(后面那個) 端口映射到主機的 6379(前面那個) 端口 |
–restart unless-stopped | 容器重啟策略 |
-v /home/redis/data:/data | 將Redis儲存文件夾掛在到主機 |
-v /home/redis/conf/redis.conf:/etc/redis/redis.conf | 將配置文件夾掛在到主機 |
-d redis:bullseye | 啟動哪個版本的 Redis (本地鏡像的版本) |
redis-server /etc/redis/redis.conf | Redis 容器中設置 redis-server 每次啟動讀取 /etc/redis/redis.conf |
–appendonly yes | 在Redis容器啟動redis-server服務器并打開Redis持久化配置 |
\ | shell 命令換行 |
注意 : 命令中所有 冒號 前面的是主機配置 , 冒號 后面的是redis容器配置 。
–restart unless-stopped : 在docker重啟時重啟當前容器。但不包含docker重啟時已停止的容器。
7、查看Redis是否運行
### 查看Docker運行中的容器
docker ps
docker ps | grep redis
8、 進入Redis容器
### 通過 Docker 命令進入 Redis 容器內部
docker exec -it redis /bin/bash
### 進入 Redis 控制臺
redis-cli
使用Redis Desktop Manager遠程連接操作數據庫
總結與未來展望
在中國移動云產業的快速發展中,未來移動云產品的展望是多維度且充滿挑戰與機遇的。隨著5G技術的普及和云計算服務的成熟,結合中國龐大的用戶基數和活躍的互聯網生態,移動云產品將迎來更廣闊的應用場景和更深層次的技術創新。
未來幾年,隨著云計算技術的不斷成熟和應用場景的不斷拓展,企業對云服務的需求將持續增長。云計算將滲透到更多行業,幫助企業實現數字化轉型,提升業務效率和競爭力。一系列針對特定行業需求的解決方案將陸續推出,這些解決方案將充分利用云計算的彈性、可擴展性和智能化特點,幫助企業解決實際問題,優化業務流程,提高運營效率。
然而,云計算行業的發展也面臨著一些挑戰。數據安全、隱私保護和網絡攻擊等問題日益突出,給云服務提供商帶來了不小的壓力。為了應對這些挑戰,云服務提供商需要不斷加強技術研發,提高服務的安全性和穩定性。通過采用先進的加密技術、建立完善的安全管理體系和提升應急響應能力,可以有效降低安全風險,保障用戶數據的安全。
同時,隨著5G、物聯網、人工智能等新技術的發展,云計算行業將迎來更多的發展機遇。5G技術的高速率、低時延特點將為云計算提供更加強大的網絡支持,使得云服務能夠更好地滿足實時性要求高的應用場景。物聯網技術的發展將使得越來越多的設備接入云端,產生海量的數據,為云計算提供了豐富的應用場景和數據資源。人工智能技術的應用將使得云計算更加智能化,為用戶提供更加個性化、精準的服務。