最近學習了redis緩存技術,現在進行總結一下吧。
redis安裝:
(1)官網https://redis.io/download下載linux版本 redis-3.2.8.tar.gz
(2)使用xftp將安裝包上傳到虛擬機上/opt目錄下,然后使用tar -zxvf redis-3.2.8.tar.gz
(3)進入redis-3.2.8目錄下,使用make命令進行編譯(由於我虛擬機上的linux是redhat6.6,默認是沒有安裝gcc編譯器的,所以首先要進行gcc安裝,可以參考地址:http://www.linuxidc.com/Linux/2012-06/63694.htm)
(4)make命令編譯成功后,復制redis-3.2.8目錄下的配置文件redis.conf到/usr/local/redis(先mkdir redis目錄),然后進入src目錄下,同樣將redis-cli,redis-server復制到/usr/local/redis目錄下。
(5)啟動redis,進入/usr/local/redis目錄下,執行命令./redis-server,出現如下圖形,則啟動成功。
修改redis啟動方式,以守護線程的形式啟動服務,修改配置文件redis.conf下的daemonize no改為 daemonize yes
然后使用命令./redis-server redis.conf 回車
(6)查看redis是否啟動成功,可以使用命令ps -ef |grep redis,出現如下則成功,默認端口是6379
(7)啟動redis客戶端,使用命令./redis-cli,輸入命令ping,顯示pong則表示成功
(8)redis配置文件redis.conf常用配置說明:
1. Redis默認不是以守護進程的方式運行,可以通過該配置項修改,使用yes啟用守護進程
daemonize no
2.指定Redis監聽端口,默認端口為6379
port 6379
3.綁定的主機地址
bind 127.0.0.1
4.當 客戶端閑置多長時間后關閉連接,如果指定為0,表示關閉該功能
timeout 300
5.指定日志記錄級別,Redis總共支持四個級別:debug、verbose、notice、warning,默認為verbose
loglevel verbose
6.設置數據庫的數量,默認數據庫為0,可以使用SELECT <dbid>命令在連接上指定數據庫id
databases 16
7.指定在多長時間內,有多少次更新操作,就將數據同步到數據文件,可以多個條件配合
save <seconds> <changes>
Redis默認配置文件中提供了三個條件:
save 900 1
save 300 10
save 60 10000
分別表示900秒(15分鍾)內有1個更改,300秒(5分鍾)內有10個更改以及60秒內有10000個更改。
8.指定存儲至本地數據庫時是否壓縮數據,默認為yes,Redis采用LZF壓縮,如果為了節省CPU時間,可以關閉該選項,但會導致數據庫文件變的巨大
rdbcompression yes
9.指定本地數據庫文件名,默認值為dump.rdb
dbfilename dump.rdb
10.指定本地數據庫存放目錄
dir ./
11.設置當本機為slav服務時,設置master服務的IP地址及端口,在Redis啟動時,它會自動從master進行數據同步
slaveof <masterip> <masterport>
12.指定是否在每次更新操作后進行日志記錄,Redis在默認情況下是異步的把數據寫入磁盤,如果不開啟,可能會在斷電時導致一段時間內的數據丟失,因為 redis本身同步數據文件是按上面save條件來同步的,所以有的數據會在一段時間內只存在於內存中。默認為no
appendonly no
13. 指定更新日志文件名,默認為appendonly.aof
appendfilename appendonly.aof
14. 指定更新日志條件,共有3個可選值:
no:表示等操作系統進行數據緩存同步到磁盤(快)
always:表示每次更新操作后手動調用fsync()將數據寫到磁盤(慢,安全)
everysec:表示每秒同步一次(折衷,默認值)
appendfsync everysec
配置文件參考文獻:http://www.runoob.com/redis/redis-conf.html