V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
V2EX  ›  HAProxy

关于动态网站的 LB(负载均衡)服务器

  •  
  •   Livid · 2015-01-23 17:13:04 +08:00 · 7313 次点击
    这是一个创建于 3590 天前的主题,其中的信息可能已经有所发展或是发生改变。
    之前因为对 Nginx 比较熟悉,所以一直用的是 Nginx。但是 Nginx 对后端的健康检查功能很弱,要么只在商业版本里有,要么只能通过 Lua 或者一些第三方模块。

    最近试了一下 HAProxy,发现其对后端的健康检查功能非常强大。而且有一个很实用的 stats 页面。

    http://cbonte.github.com/haproxy-dconv/configuration-1.5.html

    这里熟悉 HAProxy 的同学们,可以分享一下你在用 HAProxy 的过程中有遇到过什么坑么?

    谢谢大家。
    14 条回复    2015-01-24 00:24:16 +08:00
    mywaiting
        1
    mywaiting  
       2015-01-23 17:40:11 +08:00
    Quora用的就是HA?好像有个技术分享.....
    reorx
        2
    reorx  
       2015-01-23 17:56:11 +08:00
    插个题外话,tengine 有一个健康检查的模块,可以用它实现后端无损发布,个人觉得挺好用的,推荐一下: http://tengine.taobao.org/document_cn/http_upstream_check_cn.html
    tititake
        3
    tititake  
       2015-01-23 18:03:04 +08:00
    我们用的keepalived+nginx
    Nginx后端检测可以用 https://github.com/yaoweibin/nginx_upstream_check_module
    typcn
        4
    typcn  
       2015-01-23 18:05:09 +08:00
    用 varnish 很强大
    kn007
        5
    kn007  
       2015-01-23 19:02:28 +08:00
    HAProxy一直对后端健康均衡很擅长,不过没用过。。习惯用varnish
    Livid
        6
    Livid  
    MOD
    OP
       2015-01-23 19:03:40 +08:00
    目前发现的一个问题,通过 HAProxy 代理的流量,貌似后端不会收到 Connection 这个 request header。如果程序代码中有对这个的检查的话,需要留意一下。
    cevincheung
        7
    cevincheung  
       2015-01-23 19:04:47 +08:00
    tengine路过……
    iCodex
        8
    iCodex  
       2015-01-23 19:48:42 +08:00 via Android
    几个都用过,对haproxy还比较多用于数据库的负载
    http前端建议用varnish,但坑有点多
    ryd994
        9
    ryd994  
       2015-01-23 20:01:05 +08:00
    @Livid 应该是为了和后端保持长连接,避免客户端的connection: close造成连接不必要的关闭吧
    没有加keepalive应该是因为1.1默认
    那么考虑到这一点,keepalive_requests就应该设置的大一点
    kfll
        10
    kfll  
       2015-01-23 20:06:00 +08:00
    @iCodex 请问做 mysql 的 lb 的时候, acl 怎么处理呢,因为每个请求都变成 haproxy 发起的了,Host 就变成 haproxy 的 IP 了
    iCodex
        11
    iCodex  
       2015-01-23 21:26:58 +08:00
    @kfll 有什么所谓呢。直接用ip连接
    ryd994
        12
    ryd994  
       2015-01-23 22:27:48 +08:00
    @iCodex 比如userA@hostA,userB@hostB,但是禁止userA@hostB就做不到了吧
    wy315700
        13
    wy315700  
       2015-01-23 23:49:33 +08:00
    我看到个 “动态网” 。。。。
    hjc4869
        14
    hjc4869  
       2015-01-24 00:24:16 +08:00 via iPhone
    以前折腾openshift的时候,scale时前台就是haproxy
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2527 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:43 · PVG 23:43 · LAX 07:43 · JFK 10:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.