【筆記】Redis建置筆記
Redis是一個cache server
至於什麼是Redis就不在多贅述了,谷哥有非常多的資源
之前在專案上實際引用後。php與redis配合。
效能跟實務上(排序,排名)等等,都非常地不錯。
以下記錄架設redis的流程。
其實aws已經有現成架好的cahce server
但是礙於價格的關係,還是自己用ec2架設比較省錢一些。
(1) 準備好伺服器
這次使用的是AWS EC2,在防火牆規則需開6379(Redis預設port)(2)開始安裝
Ubuntu 14.04之後的Linux發行版,可以直接使用apt-get來下載安裝Redis Server,指令如下:
s
udo apt-get install redis-server
(3)開始測試
安裝完後,Redis server應該就可以自動起來,下cli指令: redis-cli
看到上述畫面,就代表成功運行了,如果出現失敗的情況。
則下指令讓Redis啟動就行
啟動Redis:
sudo service redis-server start
重啟Redis:
sudo service redis-server restart
關閉Redis:
sudo service redis-server stop
(4)修改Config
Redis Server的設定檔放在「/etc/redis/redis.conf」下指令更改Conf
sudo vi /etc/redis/redis.conf
比較常見的三處需要改(1)port: 預設為6379,如果不想走預設port則可以更改
(2)bind:是否限定某個IP才可以連線,預設為127.0.0.1也就是本機,註解掉
就可以全部對外開放(測試階段的時候才用)
(3)requirepass:連結Redis Server所需的密碼,預設是無密碼
(5)修改最大連線數
Redis Server的最大連線數可能會被受限可以透過CLI進行查詢目前的最大連線數
下指令進入CLI模式
redis-cli
輸入指令取得最大人數CONFIG GET maxclients
看到上圖就會得到最大人數,如果上限人數不合預期,
則透過下列修改:
修改
/etc/systemd/system/redis.service
文件,如下加上LimitNOFILE參數
輸入修改服務指令
sudo vi /etc/systemd/system/redis.service
如果不添加的上述參數的話,最大連線數不管怎麼設定,都會被預設鎖死,先把最大值開到65536。
輸入指令,讓系統重讀,並且將服務重啟
sudo systemctl daemon-reload
sudo systemctl restart redis.service
再次進入CLI,將最大人數設定成想要的數值。設定最大人數指令
CONFIG set maxclients 15000
查詢最大人數指令CONFIG get maxclients
查詢目前連線數量
info clients
info clients
查詢記憶體最大使用量
config get maxmemory
config get maxmemory
(6)外掛套件
目前很多Redis的GUI套件,都是要收費的。
但是官方在0.8.8版本還保留著以前開發的免費版本:
在功能使用上面都是正常的。在開發上來說非常有幫助。
安裝玩GUI套件後,輸入IP跟PORT基本上就可以連上線(預設REDIS沒密碼)
之後再伺服器端的CLI模式,模擬程式去插入資料
redis-cli
set {Key} {Vaule}
之後這筆資料就會進入到REDIS內。
再透過GUI查詢,資料就顯示了。
這樣在開發跟DEBUG,就比較容易去比對。
上述就是整個快速的伺服器建置流程。
REDIS在正式上線的時候,需要注意他的IP只能對內開放。
這是比較正規的方式,前期測試的時候可以全開,方便測試。
=============================================
採坑參考筆記:
(1)持久化設定遇到的障礙
須將LOG以及RDB存放的地方,權限都調整可以使用
https://www.jianshu.com/p/3aaf21dd34d6
https://www.jianshu.com/p/2ad2ae9f8446
(2)記憶體調整
預設是無上限,但是上線時還是要依據情況調整
https://www.jianshu.com/p/ca7e15348323
(3)內存分配優化 (vm.overcommit_memory=1)
https://cachecloud.github.io/2017/02/16/Redis%E7%9A%84Linux%E7%B3%BB%E7%BB%9F%E4%BC%98%E5%8C%96/
=============================================
採坑參考筆記:
(1)持久化設定遇到的障礙
須將LOG以及RDB存放的地方,權限都調整可以使用
https://www.jianshu.com/p/3aaf21dd34d6
https://www.jianshu.com/p/2ad2ae9f8446
(2)記憶體調整
預設是無上限,但是上線時還是要依據情況調整
https://www.jianshu.com/p/ca7e15348323
(3)內存分配優化 (vm.overcommit_memory=1)
https://cachecloud.github.io/2017/02/16/Redis%E7%9A%84Linux%E7%B3%BB%E7%BB%9F%E4%BC%98%E5%8C%96/
張貼留言