Citrix ADC

自定义服务器id持久性

在自定义服务器id持久性方法中,客户端请求中指定的服务器id用于维护持久性。要使这种类型的持久性工作,必须首先在服务上设置服务器id。Citrix ADC设备检查客户端请求的 URL,并连接到与指定服务器 ID 关联的服务器。服务提供商必须确保用户知道在其对特定服务的请求中要提供的服务器 ID。

例如,如果站点提供来自不同服务器的不同类型的数据(如图像,文本和多媒体),则可以为每个服务器分配一个服务器ID。在Citrix ADC设备上,为相应服务指定这些服务器ID,并在相应的负载平衡虚拟服务器上配置自定义服务器ID持久性。发送请求时,客户端将服务器id插入到指示所需数据类型的url中。

配置自定义服务器id持久性:

  • 在负载平衡设置中,为要使用用户定义的服务器id来维护持久性的每个服务分配一个服务器id。允许使用字母数字服务器id。
  • 使用默认语法表达式语言指定规则,以检查服务器id的url查询并将流量转发到相应的服务器。
  • 配置自定义服务器id持久性。

注意:持久性超时值不影响自定义服务器id持久性类型。持久性客户端的最大数量没有限制,因为此持久性类型不存储任何客户端信息。

示例:

在具有两个服务的负载平衡设置中,将服务器ID 2345 -图片- 56789分配给Service-1,将服务器ID 2345 -图abb123分配给Service-2。将这些服务绑定到名为Web11的虚拟服务器。

set service service -1 10.102.29.5 -CustomServerID 2345-photo-56789 set service service -2 10.102.29.6 -CustomServerID 2345-drawing-abb123 

在虚拟服务器Web11上,启用自定义服务器ID持久性。

创建以下表达式,以便检查包含字符串" sid= "的所有URL查询。

HTTP.REQ.URL.AFTER_STR(“sid = ")

示例:

set lb vserver Web11 - persistencetype customserverID -rule "HTTP.REQ.URL.AFTER_STR("sid=")" bind lb vserver Web11 Service-[1-2] 

当客户端将具有以下URL的请求发送到Web11的IP地址时,设备会将请求引导到服务2并支持持久性。

示例:

http://www.example.com/index.asp?&sid=2345-drawing-abb123

有关默认语法策略表达式的更多信息,请参阅策略配置和参考

使用配置实用程序配置自定义服务器id持久性

  1. 导航到流量管理 > 负载平衡 > 服务
  2. 打开服务并设置服务器id。
  3. 导航到流量管理 > 负载平衡 > 虚拟服务器,然后打开虚拟服务器。
  4. 在高级设置中,选择持久性。
  5. 选择客户名称,然后指定一个表达式。
自定义服务器id持久性