haproxy会话保持方法

| |
16:39,26,Dec,2011 | (152/0/0) | 本站原创
haproxy仅支持cookie-based persistence会话保持方法,需要客户端保留服务器分配的cookie,供后次访问使用
而公司项目要求会话保持方法为
1. 基于url中某个参数如tid进行会话保持
2. 基于http request header中某个值进行会话保持

所以需要使用负载均衡硬件设备,以下是主流厂商支持的会话保持方法
F5 支持会话保持方法

1.简单会话保持 – 根据客户端源IP 地址保持客户会话的技术
2.HTTP Header – 根据HTTP 包头信息保持会话的技术
3.SSL ID 会话保持 – 根据SSL ID 保持客户/服务器连接的技术
4.HTTP Cookie 会话保持 – 插入模式,改写模式, 被动模式, 散列模式(Cookie Hash)
5.SIP ID 会话保持
6.Cache 设备的专用会话保持
7.i-Mode 移动应用的会话保持技术
8.i-Rules 客户定制的会话保持方法

Array支持会话保持方法
持续性算法(Persistent):从一个特定的客户端发出的请求都被分配到一个实服务组中的同一个实服务器上进行处理。主要包括:
A.基于IP的算法

Persistent IP (pi):基于用户IP地址来选择服务器。
Hash IP (hi):基于用户IP 地址的HASH值,来选择服务器
Consistent Hash IP (chi)

B.基于报头/请求的算法

Hash Header (hh):基于用户请求报中HTTP 报头来选择服务器;
Persistent Hostname (ph):基于用户请求报中 HTTP报头的Hostname的HASH值,来选择服务器;
Persistent URL (pu):基于对URI Tag和值的静态对应关系来选择服务器。
SSL Session ID(SSLsid):基于SSL 会话ID 来选择服务器。这是基于应用服务采用的时 SSL协议,每个SSL session都有一个特定的SSL sessionID, 根据这个 ID 的保持行算法就是SSLID

C.基于Cookie的算法

Persistent Cookie (pc) : 选择服务器基于用户请求包用Cookie Name / Value 的静态对应关系;
Hash Cookie (hc) :选择服务器基于用户请求包用Cookie Name / Value 的Hash 值对应关系;
Insert Cookie (ic) :选择服务器基于 Array 向服务器响应包中插入 Cookie;
Re-write Cookie (rc):选择服务器基于 Array 向服务器响应包中重写 Cookie值。(必须为重写指定Cookie值的偏移量
Embed Cookie: 选择服务器基于 Array 向服务器响应包中嵌入 Cookie,它会见查会话已有的cookie;

Redware

1. 会话 ID
2. DNS 请求
3. 数据包包头信息
4. 数据包数据信息
5. RADIUS ID
6. SIP 标签
最后编辑: chen 编辑于2011/12/26 16:40
发表评论
  • 昵称 [注册]
  • 密码 游客无需密码
  • 网址
  • 电邮
打开HTML 打开UBB 打开表情 设置密码加密 记住我