免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 无风之谷
打印 上一主题 下一主题

[其他] 案例讨论——Nginx在工作中的应用讨论(获奖名单已公布-2012-8-23) [复制链接]

论坛徽章:
0
81 [报告]
发表于 2012-06-26 10:16 |只看该作者
不是不能开发,项目开发考虑的是时间,成本。那些大公司的团队开发这个问题应该不大,性能问题比较难控制。自己开发的不一定比这些要好。回复 55# 方兆国


   

论坛徽章:
0
82 [报告]
发表于 2012-06-26 11:07 |只看该作者
1.haproxy与lvs的做负载均衡的能力要比nginx强,而且负载均衡的算法比nginx要多,但是nginx可以做各种的策略配置,分流分离的配置,非常灵活,而且本身还可以做反向代理与web服务器。
2.与apache比较,曾经的测试,在相同机器(2c8g)上nginx跑到1.8万没有错误(客户端限制停止),apache跑到8.5k的时候出现大量报错,说nginx抗并发能力比apache要强确实是显而易见的。
3.作为缓存,实际场景里面来说,nginx不如varnish,squid因为测试中命令率一般而弃用,varnish实际生产使用经验过程中稍微比nginx高出一筹。

论坛徽章:
0
83 [报告]
发表于 2012-06-26 11:20 |只看该作者
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶

论坛徽章:
0
84 [报告]
发表于 2012-06-26 12:03 |只看该作者
coralzd 发表于 2012-06-22 08:43
我的环境下nginx 处理静态资源跑到3万的时候,速度流畅,且消耗内存低。nginx用了google-perftools,来优 ...


google-perftools这个工具可让开发创建更强大的应用程序,特别是那些用C++模版开发的多线程应用程序,包括TCMalloc, heap-checker, heap-profiler 和cpu-profiler

论坛徽章:
0
85 [报告]
发表于 2012-06-26 13:17 |只看该作者
本帖最后由 rootsecurity 于 2012-06-26 13:20 编辑

简单描述一下我以前做过的关于nginx的项目,希望共勉。
1、nginx作为web服务器
   这个架构比较简单,机器当时是用的Dell R410 16GRAM  160G SATA。nginx在编译之前加了几个插件。
   下面这个是我优化服务器/etc/sysctl.conf的配置。

  1. net.ipv4.ip_forward = 1
  2. net.ipv4.netfilter.ip_conntrack_generic_timeout = 60
  3. net.ipv4.netfilter.ip_conntrack_icmp_timeout = 3
  4. net.ipv4.netfilter.ip_conntrack_udp_timeout_stream = 10
  5. net.ipv4.netfilter.ip_conntrack_udp_timeout = 3
  6. net.ipv4.netfilter.ip_conntrack_tcp_timeout_close = 3
  7. net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 3
  8. net.ipv4.netfilter.ip_conntrack_tcp_timeout_last_ack = 3
  9. net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 3
  10. net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 3
  11. net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 300
  12. net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 3
  13. net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 3
  14. net.ipv4.tcp_fin_timeout = 3
  15. net.ipv4.tcp_syncookies = 1
  16. net.ipv4.tcp_max_orphans = 262144
  17. net.ipv4.tcp_max_syn_backlog = 262144
  18. net.ipv4.tcp_syn_retries = 1
  19. net.ipv4.tcp_synack_retries = 1
  20. net.ipv4.netfilter.ip_conntrack_max = 655040
  21. net.ipv4.tcp_keepalive_time = 300
  22. net.ipv4.tcp_keepalive_probes = 3
  23. net.ipv4.tcp_rfc1337 = 1
  24. net.ipv4.tcp_abort_on_overflow = 1
  25. net.ipv4.tcp_tw_reuse = 1
  26. net.ipv4.tcp_tw_recycle = 1
  27. net.ipv4.ip_local_port_range = 1024 65535
  28. net.core.rmem_max = 16777216
  29. net.core.wmem_max = 16777216
  30. net.ipv4.tcp_rmem = 4096 87380 16777216
  31. net.ipv4.tcp_wmem = 4096 65536 16777216
  32. net.core.netdev_max_backlog = 30000
  33. net.core.somaxconn = 262144
  34. fs.file-max = 655350
复制代码
2、nginx作为web反向代理
采用比较简单的upstream来做web反向代理,使用轮训机制。
3、nginx+keepalived


采用nginx作为web服务器的原因就是它不仅是一个web服务器,还是一个七层负载均衡软件。而且语法比Apache相对简单,配置文件通俗易懂。

论坛徽章:
0
86 [报告]
发表于 2012-06-26 13:44 |只看该作者
学习一下

论坛徽章:
0
87 [报告]
发表于 2012-06-26 14:34 |只看该作者
hzw0705 发表于 2012-06-23 10:06
从大部分回帖看来 nginx的应用与研究没有到他应有的地步,多数还只是应用在皮毛,nginx的强大完全不止于此。 ...
这个牛B, 希望这个兄弟说说经验和不是皮毛的东西。

论坛徽章:
0
88 [报告]
发表于 2012-06-26 14:35 |只看该作者
sania9 发表于 2012-06-26 11:07
1.haproxy与lvs的做负载均衡的能力要比nginx强,而且负载均衡的算法比nginx要多,但是nginx可以做各种的策略 ...
lvs 的负载均衡比Nginx强 这个估计都知道。但是 haproxy 有没有数据对比???一直都想知道这个东西跟 nginx  lighttpd 比 怎么样。

论坛徽章:
5
技术图书徽章
日期:2013-08-27 10:03:49CU大牛徽章
日期:2013-09-18 15:16:55CU大牛徽章
日期:2013-09-18 15:18:22CU大牛徽章
日期:2013-09-18 15:18:43技术图书徽章
日期:2014-04-24 15:51:26
89 [报告]
发表于 2012-06-27 09:57 |只看该作者
nginx在前端做负载均衡,加上少许内存缓存,感觉挺好的。

至于跟其他类比,我觉得,没有最强,没有最好,只有最合适的,

这个需要在制定解决方案时把握好分寸,关键在人。

论坛徽章:
0
90 [报告]
发表于 2012-06-27 10:39 |只看该作者
写得很不错
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP