You need to enable JavaScript to run this app.
导航
配置基于 Cookie 的会话保持
最近更新时间:2025.06.19 19:36:29首次发布时间:2022.11.14 12:01:10
我的收藏
有用
有用
无用
无用

默认情况下,为了分散负载,ALB 会按照您配置的负载均衡算法将客户端请求转发到不同的后端服务器。 但在某些应用场景中,需要保持会话的一致性。为满足这一需求,ALB 提供基于 Cookie 的会话保持功能。在您开启该功能后,ALB 可以将来自同一个客户端的请求转发到同一台后端服务器上。该功能适用于需要在后端服务器上维持客户端状态信息的应用场景,如电子商务网站、视频播放平台、金融服务平台等。

背景信息

ALB 支持植入 Cookie 、重写 Cookie 两种会话保持模式。

  • 植入 Cookie:当客户端首次向 ALB 发送请求时,ALB 根据负载均衡算法选择一台后端服务器来处理该请求,并在返回给客户端的响应中植入 Cookie。当后续的客户端请求携带此 Cookie 时,ALB 会将请求转发给相应的后端服务器。
  • 重写 Cookie:您需要指定待重写的 Cookie 的名称。当 ALB 检测到后端服务器的响应中包含指定名称的 Cookie 时,会重写该 Cookie 的值。当后续的客户端请求携带重写后的 Cookie 时,ALB 会将请求转发给相应的后端服务器。

注意事项

  • 当您为服务器组开启“重写 Cookie”会话保持功能时:
    • 需要在后端服务器上配置相应的 Cookie。由于不同 Web 服务器的 Cookie 设置方法各不相同,请参考相应服务器的官方文档进行配置。
    • 如果后端服务器响应中的 Cookie 与您指定的 Cookie 不匹配,ALB 不会改写 Cookie。下一次的客户端请求会按照您配置的负载均衡算法分配到后端服务器。
    • 会话保持超时时间与后端服务器在响应中通过 Set-Cookie 头部指定的 Cookie 过期时间一致。
  • 基于 Cookie 的会话保持功能的优先级高于负载均衡算法。在您为服务器组开启会话保持后,ALB 会将来自客户端的首次请求按照负载均衡算法转发到一台后端服务器。对于该客户端发起的后续请求,ALB 会忽略负载均衡算法、始终将请求转发给该台后端服务器。
  • 当携带 Cookie 的客户端请求到达 ALB 时,如果 ALB 无法成功解析该 Cookie,会将本次请求按照您配置的负载均衡算法转发到后端服务器。
  • 会话保持功能开启后,如果原定接收请求的后端服务器在健康检查中显示异常,ALB 会自动屏蔽该后端服务器。随后,ALB 会将请求转发到其他健康的后端服务器,并在新的后端服务器上建立会话保持。

前提条件

  • 已创建可用的服务器组,详见管理服务器组
  • 已创建至少一台云服务器 ECS ,在 ECS 中部署了 Web 服务。此 ECS 已添加到服务器组中。

操作步骤

在创建服务器组时,您可直接开启会话保持功能,并选择会话保持模式。对于已创建的服务器组,开启会话保持功能的操作步骤如下:

  1. 登录应用型负载均衡控制台
  2. 在左侧导航栏,单击 服务器组,进入 服务器组 页面。
  3. 服务器组 页面,单击待配置会话保持的服务器组名称。
    Image
  4. 详情 页签,单击 编辑
  5. 编辑后端服务器组 页面,开启 会话保持,并设置会话保持模式。
    • 植入 Cookie:您需要设置会话保持超时时间。默认值是 1000 秒,取值范围为 1~86400 秒。
    • 重写 Cookie:您需要输入 Cookie 名称。Cookie 名称只能包含字母、 数字、下划线(_)和短横线(-)。长度不能超过 200 个字符。
  6. 确定配置无误后,单击 确定