公司的图片服务器一直以来负载都比较高,原因是图片比较分散而且比较小。经常把iowait搞的特别的高。但是只有一台机器也法用squid,经测试squid和apache在同一台机器效果会很糟糕的。因为squid要写磁盘,Apache要读磁盘(本公司的情况是大量的随机读)。
经过测试,决定用lighttpd加上一个国产的模块mod_mem_cache来缓解次问题。经过一天的运行,通过数据的分析,感觉效果简直太明显了。
之前iowait会达到20-30现在最高维持到6左右。
负载有以前的10下降到1以下。
以下是命中率的统计:
mem-cache.cached-items: 843700
mem-cache.hitrate(%): 91
mem-cache.used-memory(MB): 2047
安装方法很简单,只需要到官方网站上下载支持mod_mem_cache的patch,安装方法没有什么特别的。安装好后在配置文件中加入如下几行:
mem-cache.filetypes = ("image/jpg", "image/gif", "image/bmp", "image/png","image/jpeg")#Cache image file in memory
mem-cache.max-memory = 2048 # Use 1G memory cache
mem-cache.max-file-size = 64 # Cache maxium 1M-size file
如果有类似问题的公司也采用此方法,相信lighttpd+mod_mem_cache不会让你失望的。
m2014-architecture-imgserver->Lighttpd +mod_mem_cache的效果简直太好了,布布扣,bubuko.com
m2014-architecture-imgserver->Lighttpd +mod_mem_cache的效果简直太好了
原文:http://www.cnblogs.com/pricks/p/3816819.html