创业团队负载均衡技术选型
我们团队在开发一款app,后端主要有http server和socket server,一般的查询之类的接口,走的http,应用开启期间,走的socket 长连接,推送内容。
========以上是背景=========
我们现在要对后端的服务进行负载均衡,一方面考虑可用,一方面提高性能。负载均衡有以下备选方案
lvs
haproxy
nginx
由于我们有tcp层的长连接,所以,单独nginx无法支持,nginx可以安装一些插件支持,但稳定性目前没有靠谱儿的说法儿。所以剩下的就是lvs和haproxy。lvs在稳定性上,性能上最佳,不过对于一些功能上的要求,比较弱了。haproxy综合了nginx和lvs的功能,所以调研一番之后,综合想选择haproxy,大家都在用什么呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
针对HTTP部分使用nginx作为前端的soft LB,可以考虑用Tengine,可以有健康检查等功能,然后负载均衡到各WEB服务器。
socket部分,因为是长链,所以其实不仅占用了SLB的连接,还占用了socket server的连接,所以SLB发挥的作用并不大。可以考虑socket发起连接前先发一个请求到决策服务器,决策服务器根据socket服务器的负载返回连接或负载最低的服务器,让client链接相应的服务器。通讯协议中增加kick off命令,server可以kick off client,并给一个新的ip地址,让client去连接。
目前使用的是HA+keepalived+nginx+mysql,能够实现很好的负载均衡,总个人感觉这种架构足够支撑的起一般的网站!