memcache命中率有关问题

原创
2016-06-13 11:48:54 695浏览

memcache命中率问题

本帖最后由 laozhao0000 于 2014-02-07 16:15:50 编辑 这个问题纠结了很长时间,贴出来请大牛们帮忙分析。

生产环境:
5台PHP服务器作负载均衡,每台机器上分别装了memcache,程序在使用cache时将5台memcache作为一个集群。

问题:
STATS出来的结果丢失率很高,命中率只达20%,(需要说明的是每台的使用率都不高--程序用的少),miss值并非均匀分布,呈每5分钟整点递增200+的态势。

问题排查:
1.crontab (环境很复杂,但可以确定生产服务没有开启)。
2.在程序里记录5分钟定点的miss key,无异常。


STATS:

Current Items(total) 2051 (14542)
Hits 134416
Misses 492000
Request Rate (hits, misses) 0.07 cache requests/second
Hit Rate 0.01 cache requests/second
Miss Rate 0.05 cache requests/second
Set Rate 0.00 cache requests/second
------解决方案--------------------
memcache服务器之间是否做了同步?
------解决方案--------------------
启动的时候加参数 -M试试
------解决方案--------------------
引用:
Quote: 引用:

启动的时候加参数 -M试试



这个是个memcache 的LRU有关吧

Free: 2.0 GBytes (100.0%) Hits: 134416 (21.5%)
Used: 521.5 KBytes (0.0%) Misses: 492000 (78.5%)

这种情况会开启LRU吗?


memcache不像其它带有队列功能的Nosql,其本身自带的lru是用来保证新数据能够正常缓存的,禁止lru可以防止数据被系统策略性丢弃,我个人的建议是你在没有获取到更好的解决方案之前,可以试试
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。