Azure 容器应用中的会话亲和性
会话亲和性,也称为粘性会话,是一种允许你将来自客户端的所有请求路由到同一副本的功能。 此功能适用于需要与同一副本建立一致连接的有状态应用程序。
会话粘性是使用 HTTP Cookie 强制实现的。 启用 HTTP 入口时,此功能在单一修订模式下可用。 如果上一副本不再可用,则客户端可能会路由到新的副本。
如果应用不需要会话亲和性,建议不要启用它。 禁用会话亲和性后,入口会在副本之间更均匀地分配请求,从而提高应用的性能。
注意
只有当应用处于单一修订模式且入口类型为 HTTP 时,才支持会话亲和性。
配置会话亲和性
通过在 ingress.stickySessions
配置部分设置 affinity
属性来配置会话亲和性。 以下示例演示如何为容器应用配置会话亲和性:
{
...
"configuration": {
"ingress": {
"external": true,
"targetPort": 80,
"transport": "auto",
"stickySessions": {
"affinity": "sticky"
}
}
}
}
可以在通过 Azure 门户创建容器应用时启用会话亲和性。 若要启用会话亲和性,请执行以下操作:
- 在“创建容器应用”页上,选择“应用设置”选项卡。
- 在“应用程序入口设置”部分,为“会话亲和性”设置选择“启用”。
还可以在创建容器应用后启用或禁用会话亲和性。 若要启用会话亲和性,请执行以下操作:
- 在门户中转到你的应用。
- 选择“入口”。
- 可以通过选择或取消选择“启用”来启用或禁用“会话亲和性”。
- 选择“保存”。