导航

不许杀人,也不许放火

« 自己编译了一个nginx-0.5.36昨天的习作-图片下载器 »

缓存性能调整

今天看到一个老外的帖子,关于WEB反向缓存性能调整

他的环境有1台后端,平均处理能力是10ms/req,三台缓存,负载大概为4000reqs/s。

1、使用varnish的trunk版本;

2、调整linux内核参数:
net.ipv4.ip_local_port_range = 1024 65536
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.ipv4.tcp_fin_timeout = 3
net.ipv4.tcp_tw_recycle = 1
net.core.netdev_max_backlog = 30000
net.ipv4.tcp_no_metrics_save=1
net.core.somaxconn = 262144
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2

3、在varnish上使用malloc的方式,不使用缓存文件方式,-s malloc,30G,需要一个很大的swap分区,这是因为老外发现新的linux内核"更喜欢"把映射到内存的缓存文件回写到磁盘上,这样IO就吃紧了。

4、网站上新的热门内容之前先"预热"缓存:自己请求一下,让缓存里有这个内容,然后再把链接发布到网站页面上。

  • 相关文章:
  • quote 3.乐百事
  • 我说的cache是真正的cache,不是现在proxy_store ,proxy_buffer之类的!
  • 2008-5-16 17:10:48 回复该留言
  • quote 2.乐百事
  • nginx未来版本即将支持cache功能,ncache或许将要结束使命吧!
    minuteman 于 2008-5-15 19:05:59 回复
    nginx目前本身已经具备简单的cache功能,并且作者自己认为性能比squid高
  • 2008-5-15 19:05:59 回复该留言
  • quote 1.outrace
  • 有一个ncache的项目,是在nginx代码基础上开发的缓存
    新浪公司的国人作品。地址:http://www.ncache.org
    想问问博主,能否搞个与varnish的测评,看看哪个更快些。
    谢谢。
    minuteman 于 2008-5-7 19:52:13 回复
    ncache刚出现的时候下载了试过,一下子没跑起来,当时也懒得折腾
    有机会比较一下,不过个人有个想法,新浪团队做的这个东西,可能在特定的业务上性能是非常好的,但未必适合其他网站的情况,单纯的性能没有太多的意义,如果性能好,但不能用在你我的网站上,也只能干瞪眼,比如根据cookie缓存的问题
    outrace 于 2008-5-9 15:52:48 回复
    非常感谢博主的回复。
    因为我心目中的架构就是:
    1、php等程序做逻辑处理,这些程序不对输出进行cache,只对中间的比如sql,数据,运行结果等进行cache。

    2、剩下的文件就是html/css/flash/js及图片,这些会放在特定的服务器上,这些就是用ncache或varnish这样的cache。

    所以感觉按照我这样的想法的话,应该varnish和ncache都是可以满足的。
    当然,这些只是想法。
    minuteman 于 2008-5-15 19:09:05 回复
    但这样的话,如果cache不支持cookie,那一些反盗链的工作就不好做了,或者说你登录后能看到的图片,也许我不登录也能搞到
  • 2008-5-15 19:09:05 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Search

控制面板

首页

最近发表

Powered By Z-Blog