IT技术博客大学习 共学习 共进步

Nginx 还是 Varnish?

龙浩的blog 2011-11-23 23:56:28 浏览 5,184 次

单文件压力测试


    准备用varnish来做图片缓冲服务器,用ab测试了一下单文件读取。发现nginx和varnish都可以把网卡写满(千兆网卡速度》110M/S)。调整了ab测试的并发数,在同样的配置的机器上,发现nginx的在1W并发情况下,依然可以运行;varnish在3600并发测试的时候,直接开始报错。不能不说nginx是神器,varnish不靠谱么?

多文件压力测试


  1. 到图片服务器的图片目录执行:find . -name "*.jpg" -print > jpg_url.txt
  2. 合计得到38W张图片,用python代码切割成10个文件。
  3. 启动5个python进程访问其中5个url,varnish即使有缓存也无法写满网卡,修改为启动10个python进程,varnish有缓存可以写满网卡。
  4. 启动10个经常多文件访问nginx服务器,发现网卡平均流量为60M左右。
  5. 最后把所有文件用varnish缓存,内存占用大小为19G多。平均每张图片大小为50K


结论


    我们图片的平均大小为50K,varnish的3500的并发,最大处理为175MB,超过网卡125MB的峰值。所以还是用varnish比较靠谱。如果图片的大小为10K,直接用nginx做反向代理或许更好。

建议继续学习

  1. 配置Nginx+uwsgi更方便地部署python应用 (阅读 106,824)
  2. 搜狐闪电邮箱的 Nginx/Postfix 使用模式 (阅读 33,762)
  3. 解析nginx负载均衡 (阅读 16,423)
  4. Nginx模块开发入门 (阅读 11,042)
  5. 检查nginx配置,重载配置以及重启的方法 (阅读 10,684)
  6. Cacti 添加 Nginx 监控 (阅读 10,363)
  7. Nginx+FastCgi+Php 的工作机制 (阅读 10,084)
  8. 奇怪的 Nginx 的 upstream timed out 引起响应 502 (阅读 9,823)
  9. nginx的配置文件 (阅读 9,785)
  10. 解决 nginx 反向代理网页首尾出现神秘字符的问题 (阅读 8,963)