有Debian Squeeze服务器:
1)Load Balancer – Hyproxy 1.4.18,16个cpu核心,5-10 GB RAM(这是云服务)
2)4个Apache后端(10 GB RAM,16个cpu内核)
当我们开始haproxy时,网站运行良好约2分钟,然后约30秒钟挂起。 (此时直接访问后台运行良好,没有缓慢的数据库查询或任何后端问题)在这种情况重复之后。 有趣的观察:我们试图使用nginx作为平衡器,我们得到了同样的行为。
当haproxy(nginx)挂起时,没有任何cpu或ram高负载。
什么可能是这种行为的原因?
谢谢!
我有这样的症状,事实certificate,我正在达到连接限制(像2000连接,这是足够小的,约300浏览网站的并发用户,不知道为什么限制是如此之小)用尽。 我发现/etc/haproxy/haproxy.cfg中的以下内容使我的网站更加stream畅:
global maxconn 8192 defaults [...] option httpclose maxconn 8192
问题解决了。 出现此问题的原因是系统日志中存在haproxy的以下string:
paroxy: nf_conntrack: table full, dropping packet paroxy: nf_conntrack: table full, dropping packet paroxy: nf_conntrack: table full, dropping packet paroxy: nf_conntrack: table full, dropping packet
我们改变了sysctl的设置
sysctl -a | grep conntrack_max net.ipv4.netfilter.ip_conntrack_max = 65536 net.netfilter.nf_conntrack_max = 65536 net.nf_conntrack_max = 65536
到更大的价值。
nginx和Apache的服务器有多less请求? 没有任何等待的连接?
当我在他们之间有很多要求时,我几乎没有什么问题。 尝试禁用Apache和nginx上的保持活动连接,如果可以的话。
你的haproxy.cfg是什么样的? 任何防火墙到位/速率限制?
haproxy是如何安装的? configuration选项?
尝试使用1.5 dev7 haproxy版本使TARGET = linux26 ,似乎没有任何问题,在我的网站 – 基准在http://centminmod.com/siegebenchmark_nginx_test3.html