对于做软负载,我们都知道主流的方案有LVS、Haproxy、Nginx!那么对于Haproxy和Nginx,我们如何选择呢?回答这个问题之前,我根据个人使用经验来讲下它们的特点! Haproxy特点 支持TCP与Http协议,工作在网络4层和7层 支持Session共享、Cookies引导 支持通过URL健康检测 支持8种负载均衡策略 支持心跳检测 Nginx特点 支持Http协议,工作在网络7层 支持通过端口健康检测 支持强大的正则匹配规则 支持WebSocket协议 支持Http Cache 说明: 对于Http协议,Haproxy处理效率比Nginx高。所以,没有特殊要求的时候或者一般场景,建议使用Haproxy来做Http协议负载!但如果是Web,那么建议使用Nginx!总之,大家可以结合各自使用场景的特点来进行合理地选择! 上次有人问我:Nginx或Haproxy的连接数能否突破“65535”这个“魔咒”?其实大家有这样的疑问,是因为对Nginx或Haproxy工作原理不了解导致的! 下面以Linux服务器为例,讲解下二者理论上最大连接数: Linux上Nginx理论上最大连接数 正向代理:最大连接数 = work_processes * worker_connections 在上述2种情况下最大连接数(理论值)分别是: 8 * 65535 和 8 * 65535 /4 Linux上Haproxy理论上最大连接数 最大连接数 = maxconn( global | defaults | listen ) 更多Nginx相关技术文章,请访问Nginx使用教程栏目进行学习! (责任编辑:admin) |