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模式  
  

  

posted @ 2017-11-21 16:16  桃花雪  阅读(4576)  评论(1编辑  收藏  举报