更新时间:2022-01-25 GMT+08:00

会话保持

会话保持就是指在负载均衡器上有这么一种机制,可以识别客户与服务器之间交互过程的关联性,在作负载均衡的同时,还保证一系列相关联的访问请求会保持分配到同一台服务器上。

会话保持有什么作用呢,举例说明一下:如果有一个用户在服务器甲登录了,访问请求被分配到服务器甲,在很短的时间,这个用户又发出了一个请求,如果没有会话保持功能的话,这个用户的请求很有可能会被分配到服务器乙去,这个时候在服务器乙上是没有登录的,所以你要重新登录,但是用户并不知道自己的请求被分配到了哪里,用户的感觉就是登录了,怎么又要登录,用户体验很不好。如果配置了会话保持功能,所有这一系列的操作过程都由同一台服务器完成,而不能被负载均衡器分配到不同的服务器上。

四层会话保持

四层协议的会话保持支持基于源IP地址的简单会话保持,即来自同一IP地址的访问请求会转发到同一台后端服务器上进行处理。

四层会话保持失效的场景如下:

  • 客户端的源IP地址发生变化。
  • 客户端访问请求超过会话保持时间。
  • 当创建四层协议监听器,分配策略类型选择“加权轮询算法”,可配置会话保持时间。
  • 四层会话保持时间默认为20分钟,最长为1小时。

七层会话保持

七层协议的会话保持支持HTTP cookie和应用程序cookie的会话保持。用户可根据自身需求选择相应的会话保持方式来分配用户访问流量,提升负载均衡能力。

  • HTTP cookie:负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个后端服务器处理。
  • 应用程序cookie:该选项依赖于后端应用。后端应用生成一个cookie值,后续所有包含这个cookie值的请求都会由同一个后端服务器处理。

七层会话保持失效的场景如下:

  • 如果客户端发送请求未附带cookie,则会话保持无法生效。
  • 客户端访问请求超过会话保持时间。
  • 当创建七层协议监听器,分配策略类型选择“加权轮询算法”,可配置会话保持时间。
  • 七层会话保持时间默认为20分钟,最长为24小时。

负载均衡器支持源IP、负载均衡器cookie、应用程序cookie三种会话保持类型。

配置会话保持

  1. 登录管理控制台。
  2. 在管理控制台左上角单击图标,选择区域和项目。
  3. 选择“服务列表 > 网络 > 弹性负载均衡”。
  4. 在“负载均衡器”界面,单击需要配置会话保持的负载均衡名称。
  5. 在该负载均衡界面的“后端服务器组”页签,单击需要配置会话保持的后端服务器组名称右侧的
  6. 开启会话保持功能,配置会话保持类型以及会话保持时间参数。
  7. 单击“确定”。