1、簡介
1.基於內存的key-value數據庫
2.基於c語言編寫的,可以支持多種語言的api //set每秒11萬次,取get 81000次
3.支持數據持久化
4.value可以是string,hash, list, set, sorted set
2、使用場景
1. 去最新n個數據的操作
2. 排行榜,取top n個數據 //最佳人氣前10條
3. 精確的設置過期時間
4. 計數器
5. 實時系統, 反垃圾系統
6. pub, sub發佈訂閱構建實時消息系統
7. 構建消息隊列
8. 緩存
3、安裝
Windows版下載地址:https://github.com/MicrosoftArchive/redis/releases
Linux版下載地址:https://redis.io/download
演示 linux下安裝
下載:
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
解壓:
tar -zxvf redis-5.0.3.tar.gz
改個名字方便下面的命令通用:
mv /usr/redis-5.0.3 /usr/redis
安裝gcc依賴(redis 使用c語言寫的,據說只有3萬行):
yum install gcc
進入解壓目錄編譯:
make MALLOC=libc
安裝並且把redis啓動文件加入到/usr/local/bin目錄
cd src && make install
安裝成功後
usr/local/bin 下邊會多幾個 以redis開頭的文件
4、redis 啓動三種方式
(1)前端啓動
前端啓動的命令爲(首先進入bin目錄):
啓動界面如下 :
前端啓動的關閉:
- 強制關閉:Ctrl+c
- 正常關閉:./redis-cli shutdown
前端啓動的問題:一旦客戶端關閉,則redis服務也停掉。注意這樣啓動是用的是redis 內部的默認的配置文件(不是解壓包裏邊的那個redis.conf,所以修改那個沒用,那個只是一個配置的模板),無法更改,僅限於本機能夠連接
(2)後端啓動
首先需要將redis解壓之後的源碼包中的redis.conf文件拷貝到我們安裝的bin目錄下,然後使用vim修改redis.conf文件。將daemonize no改爲daemonize yes
然後使用命令後端啓動redis(注意這裏指定了配置文件,所以redis是多實例的,即使用不同的配置文件,可以開啓多個redis服務)
./redis-server redis.conf
看是否啓動成功
關閉後端啓動的方式爲:
強制關閉:kill -9 7944
正常關閉:./redis-cli shutdown
注意:在項目中,建議使用正常關閉。因爲redis作爲緩存來使用的話,將數據存儲到內存中,如果使用正常關閉,則會將內存數據持久化到本地之後,再關閉。如果是強制關閉,則不會進行持久化操作,可能會造成部分數據的丟失
(3)腳本啓動(將redis 加入開機自啓)
在redis解壓目錄中的utils目錄下,有個redis_init_script腳本。將redis_init_script腳本拷貝到linux的/etc/init.d目錄中(改下路徑),將redis_init_script重命名爲redis_6479
修改配置信息:
在第2行添加註釋如下:
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
修改路徑信息:
主要是這幾行:
EXEC ,CLIEXEC修改爲自己的路徑,CONF指定自己的配置文件路徑
授權:
chmod +x /etc/init.d/redis_6479
添加到開機自啓
chkconfig redis_6479
chkconfig --add redis_6479
啓動並查看:
修改配置文件設置遠程連接
bind 0.0.0.0 修改爲這個 port 6379 這個爲redis端口 #修改這個爲yes,以守護進程的方式運行,就是關閉了遠程連接窗口,redis依然運行 daemonize yes #將protected-mode模式修改爲no protected-mode no #設置需要密碼才能訪問,password修改爲你自己的密碼 requirepass password