Redis 簡介
Redis 是完全開源免費的,遵守BSD協議,是一個高性能的key-value數據庫。
Redis 與其他 key - value 緩存產品有以下三個特點:
Redis支持數據的持久化,可以將內存中的數據保存在磁盤中,重啓的時候可以再次加載進行使用。
Redis不僅僅支持簡單的key-value類型的數據,同時還提供list,set,zset,hash等數據結構的存儲。
Redis支持數據的備份,即master-slave模式的數據備份。
Redis 優勢
性能極高 – Redis能讀的速度是110000次/s,寫的速度是81000次/s 。
豐富的數據類型 – Redis支持二進制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數據類型操作。
原子 – Redis的所有操作都是原子性的,同時Redis還支持對幾個操作全並後的原子性執行。
豐富的特性 – Redis還支持 publish/subscribe, 通知, key 過期等等特性。
Redis與其他key-value存儲有什麼不同?
Redis有着更爲複雜的數據結構並且提供對他們的原子性操作,這是一個不同於其他數據庫的進化路徑。Redis的數據類型都是基於基本數據結構的同時對程序員透明,無需進行額外的抽象。
Redis運行在內存中但是可以持久化到磁盤,所以在對不同數據集進行高速讀寫時需要權衡內存,因爲數據量不能大於硬件內存。在內存數據庫方面的另一個優點是,相比在磁盤上相同的複雜的數據結構,在內存中操作起來非常簡單,這樣Redis可以做很多內部複雜性很強的事情。同時,在磁盤格式方面他們是緊湊的以追加的方式產生的,因爲他們並不需要進行隨機訪問。
Redis 安裝
Window 下安裝
下載後解壓到本地磁盤
可以重命名爲Redis
具體操做:
打開一個 cmd 窗口 使用cd命令切換目錄到運行redis-server.exe redis.window.conf
上圖我們可以看到redis服務已經啓動成功,綁定IP是本地127.0.0.1 端口:6379
這個文件是redis自己帶的默認配置,可以修改ip 和端口。
我們可以在開一個cmd,確認一下我們的redis 服務是否啓動成功
#查看ALL端口
netstat -a
#根據端口號查程序的進程號
netstat -ano |findstr 端口號
、
#根據程序的進程號查看具體的程序名稱
tasklist|findstr 進程號
案例測試:
可以使用測試客戶端程序redis-cli和redis服務交互數據、存儲數據的測試
1、切換到redis目錄下運行 redis-cli.exe -h 127.0.0.1 -p 6379 。(類似用xshell 連接數據庫服務一樣)
2、設置鍵值對 set myKey wenhy
3、取出鍵值對 get myKey
Success!!!
Linux 下安裝
下載地址:http://redis.io/download,下載最新文檔版本。
本教程使用的最新文檔版本爲 2.8.17,下載並安裝:
$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz$ tar xzf redis-2.8.17.tar.gz $ cd redis-2.8.17$ make
make完後 redis-2.8.17目錄下會出現編譯後的redis服務程序redis-server,還有用於測試的客戶端程序redis-cli,兩個程序位於安裝目錄 src 目錄下:
下面啓動redis服務.
$ cd src $ ./redis-server
注意這種方式啓動redis 使用的是默認配置。也可以通過啓動參數告訴redis使用指定配置文件使用下面命令啓動。
$ cd src $ ./redis-server redis.conf
redis.conf是一個默認的配置文件。我們可以根據需要使用自己的配置文件。
啓動redis服務進程後,就可以使用測試客戶端程序redis-cli和redis服務交互了。 比如:
$ cd src $ ./redis-cli redis> set myKey wenhy OK redis> get myKey"wenhy"