随着redis的发展,越来越多的架构用它取代了memcached作为缓存服务器的角色, 几个很突出的特点:
- Hash, Sorted Set, List等数据结构
- 可以持久化到磁盘
- 支持cluster (3.0)
配置
Redis配置
作为缓存服务器,如果不加以限制内存的话,就很有可能出现将整台服务器内存都耗光的情况,可以在redis的配置文件里面设置:
# 限定最多使用1.5GB内存
maxmemory 1536mb
如果内存到达了指定的上限,还要往redis里面添加更多的缓存内容,需要设置清理内容的策略:
# 设置策略为清理最少使用的key对应的数据
maxmemory-policy allkeys-lru
INFO 命令,能够随时监控服务器的状态,只用telnet到对应服务器的端口,执行命令即可:
telnet localhost 6379
info
在输出的信息里面有这几项和缓存的状态比较有关系:
keyspace_hits:14414110
keyspace_misses:3228654
used_memory:433264648
expired_keys:1333536
evicted_keys:1547380
通过计算hits和miss, 得到缓存的命中率:14414110 / (14414110 + 3228654) = 81%