怎样在haproxy中设置会话保持(粘滞会话)?

 时间:2026-02-12 07:31:54

1、在haproxy的配置文件的balance中进行配置。

怎样在haproxy中设置会话保持(粘滞会话)?

2、source的方式将同一个源IP的请求转发给同一个backend server,可以作用于tcp和http。但是当某个源IP的请求量较大,或者用户请求经过NAT后到达,会导致backend server的负载严重不均衡。不采用。

怎样在haproxy中设置会话保持(粘滞会话)?

3、url_param的方式,需要业务在url中带有sessionid,适用于http。不采用。

怎样在haproxy中设置会话保持(粘滞会话)?

4、stick-tables的方式,设置复杂,且需要维护记录表。不采用。

怎样在haproxy中设置会话保持(粘滞会话)?

5、cookie的方式本身也有多种策略,例如insert,prefix,rewrite等,适用于http。

怎样在haproxy中设置会话保持(粘滞会话)?

6、经过对比,决定采用以下方式:

cookie cookie.XXXXX.cn insert indirect postonly

怎样在haproxy中设置会话保持(粘滞会话)?

1、未发送post请求之前,依然采用roundrobin的方式。第一次get请求:

怎样在haproxy中设置会话保持(粘滞会话)?

2、第二次get请求:

怎样在haproxy中设置会话保持(粘滞会话)?

3、发送了post请求后,被设置cookie。cookie的值为处理post请求的backend server的ID。

怎样在haproxy中设置会话保持(粘滞会话)?

4、后续请求被转发到同一个backend server

用户后续所有http请求,都会带上cookie,被转发到同一个backend server。

怎样在haproxy中设置会话保持(粘滞会话)?

怎样在haproxy中设置会话保持(粘滞会话)?

5、绑定的backend server宕机后,cookie失效

绑定的backend server宕机后,虽然后续发送的请求中依然会带有cookie,但是这时候会重新回到roundrobin的状态,直到用户再次发送POST请求,重新绑定backend server。

宕机后,再次发送POST的情形:

怎样在haproxy中设置会话保持(粘滞会话)?

  • 安装Win10系统后启用SATA硬盘为AHCI的方法
  • IE8无法保存账号和密码怎么办
  • win10经常蓝屏收集错误
  • win11桌面图标怎么设置
  • HP工作站使用LSI 9260 SAS 卡创建RAID0
  • 热门搜索
    如何办理银行卡 提前还贷利息怎么算 怎么充值q币 江门在哪里 如何制作目录 怎么调节电脑字体大小 如何清洗加湿器 蛇肉怎么吃 怎么消青春痘 朋友圈怎么看访客记录