可以将应用程序 Cookie 持久性模式应用于任何附加了 HTTP 应用程序配置文件的虚拟服务。在使用该持久性方法时,NSX Advanced Load Balancer 不会将自己的 Cookie 插入到 HTTP 响应以实现持久性。相反,它依赖于服务器插入的现有 Cookie 或标头。如果指定的 Cookie 在客户端请求中不存在,则 NSX Advanced Load Balancer 查找同名的 URI 查询并保留该值。这种持久性是对 ASP 或 Java 会话 ID 执行的。
在使用会话 ID 时,服务器无法控制客户端是否接受 Cookie。为此,它们可以选择将会话 ID 嵌入在 Cookie 和 URI 中。来自欧洲的旧浏览器或客户端可能会跳过 Cookie,但仍将会话 ID 包含在其请求查询中。因此,NSX Advanced Load Balancer 自动检查这两个位置。
在服务器响应和客户端请求中找到标识符后,NSX Advanced Load Balancer 在本地持久性表中创建一个条目以将来实现持久性,如下所示:
www.avinetworks.com/index.html?jsessionid=a1b2c3d4e5
该方法涉及使用现有的服务器 Cookie。要使 NSX Advanced Load Balancer 使用自己的 Cookie 以实现持久性,请使用 HTTP Cookie 持久性模式,该模式简单直接并具有更高的可扩展性。
有关其他持久性方法和选项的说明,请参见持久性。
持久性表
由于应用程序 Cookie 持久性信息存储在每个 SE 本地,因此,较大的表占用更多的内存。对于非常大的持久性表,请考虑通过 SE 内存的 SE 组属性和
在 SE 中添加额外的内存。应用程序 Cookie 持久性表自动镜像到所有以下 SE:SE 支持的虚拟服务使用配置了该持久性类型的池。
配置选项
有关用于配置应用程序 Cookie 持久性配置文件的字段的详细信息,请参见 NSX Advanced Load Balancer UI 中的“HTTP Cookie 持久性”下面的“配置选项”。确保从类型下拉菜单中选择应用程序 Cookie。