Redis只作為緩存,不做持久化的配置


#1.配置緩存內存限制和清理策略  
#作為緩存服務器,如果不加以限制內存的話,就很有可能出現將整台服務器內存都耗光的情況,可以在redis的配置文件里面設置:  
  
#example:  
# 限定最多使用1.5GB內存  
maxmemory 1536mb  
#如果內存到達了指定的上限,還要往redis里面添加更多的緩存內容,需要設置清理內容的策略:  
#默認為0,沒有指定最大緩存,如果有新的數據添加,超過最大內存,則會使redis崩潰,所以一點要設置。  
#設置maxmemory之后,配合的要設置緩存數據回收策略。  
  
  
# 設置策略為清理最少使用的key對應的數據  
maxmemory-policy allkeys-lru  
  
  
#下面為redis官網上的幾種清理策略:  
 
#volatile-lru:從已設置過期時間的數據集(server.db[i].expires)中挑選最近最少使用的數據淘汰

#volatile-ttl:從已設置過期時間的數據集(server.db[i].expires)中挑選將要過期的數據淘汰

#volatile-random:從已設置過期時間的數據集(server.db[i].expires)中任意選擇數據淘汰

#allkeys-lru:從數據集(server.db[i].dict)中挑選最近最少使用的數據淘汰

#allkeys-random:從數據集(server.db[i].dict)中任意選擇數據淘汰

#no-enviction(驅逐):禁止驅逐數據

  
   
#redis回收算法,實際不是嚴謹的LRU算法,而是抽樣回收數據,這樣算是為了減少消耗內存使用,但是抽樣回收的緩存和全部數據回收緩存差異非常小,或者根本就沒有。  
  
   
#先預測好系統所需要的內存高峰,部署相對應內存的緩存服務器。  
#設置maxmemory和相對應的回收策略算法,設置最好為物理內存的3/4,或者比例更小,因為redis復制數據等其他服務時,也是需要緩存的。  
#以防緩存數據過大致使redis崩潰,造成系統出錯不可用。犧牲一部分緩存數據,保存整體系統可用性。  
  
  
#如果數據是 冪律分布  也就是某些數據訪問頻率比較高 則適合allkeys-lru  
#如果數據是 平等分布  也就是訪問頻率比較平均 則適合allkeys-random  
  
#配對的配置:  
maxmemory-samples 3  
  
#默認值3,上面LRU和最小TTL策略並非嚴謹的策略,而是大約估算的方式,因此可以選擇取樣值以便檢查  
  
#2.我的需求是只把redis當作緩存來用,所以持久化到硬盤對我的需求來說沒有意義。配置
 
save ""  
  
#3.增加ip綁定(可選)  
redis 不夠安全,# bind 192.168.1.100 10.0.0.1  
# bind 127.0.0.1  
#指定Redis 只接收來自於該IP 地址的請求,如果不進行設置,那么將處理所有請求,系統默認是注釋掉的,不開啟。在生產環境中為了安全最好設置該項。  
4.maxclients 10000  
  
#限制同時連接的客戶數量。當連接數超過這個值時,redis 將不再接收其他連接請求,客戶端嘗試連接時將收到error 信息。默認為10000,要考慮系統文件描述符限制,不宜過大,浪費文件描述符,具體多少根據具體情況而定  
  
#5.當一個redis支撐不了的時候再考慮Master-Slave模式  
  

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM