memcache占用CPU过高的解决办法

  • Simon 发布于 2016-08-19
  • 栏目: windows
  • 6130人围观
  • 2评论

Simon最近为公司服务器操碎了心 , 先是mysqld进程占用CPU过高 , 导致服务器性能变低 ,网站打开太慢.通过增加max_connections及table_cache解决了问题 ,随后发现memcache的CPU占用一直在50%左右 , 这种情况可不正常.


分析应该是memcache的内存大小还是默认配置,已经满足不了当前的大数据量的需要了,大量的新缓存需要进入,同时大量的旧缓存又需要被淘汰出来,一进一出导致CPU占用过多.
进入注册表,找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\memcached Server
ImagePath项的值为:“D:\memcached\memcached.exe” -d runservice

改成:“D:\memcached\memcached.exe” -d runservice -m 256

在值后面加上 -m 你想要分配的内存大小 -m 256就是内存256M

修改端口的话 加上 -p 12345 是端口号


修改完成后 进入服务(services.msc),找到memcached server 重启服务,看看你的memcache的CPU占用是不是下来了?

评论

  • 我是谁呀 (2016-12-07 17:03:38) 说:
    公司有钱直接上云,把数据库和缓存分开 搭建均衡负载 速度杠杠的
    • Simon (2016-12-07 17:15:44) 说:
      必须啊,现在公司已经换了