ADC

用例 2: 为 DataStream 配置负载平衡的令牌方法

您可以为 DataStream 配置令牌负载平衡方法,以根据从客户端(应用程序或 Web 服务器)请求中提取的令牌值选择数据库服务器。这些令牌是通过使用 SQL 表达式定义的。对于具有相同令牌的后续请求,Citrix ADC 设备将请求发送到处理初始请求的同一数据库服务器。具有相同令牌的请求将发送到同一数据库服务器,直到达到最大连接限制或会话条目过时。

您可以使用以下示例 SQL 表达式来定义令牌:

MySQL MS SQL
MYSQL.REQ.QUERY.TEXT MSSQL.REQ.QUERY.TEXT
MYSQL.REQ.QUERY.TEXT(n) MSSQL. REQ.QUERY.TEXT(n)
MYSQL.REQ.QUERY.COMMAND MSSQL.REQ.QUERY.COMMAND
MYSQL.CLIENT.USER MSSQL.CLIENT.USER
MYSQL.CLIENT.DATABASE MSSQL.CLIENT.DATABASE
MYSQL.CLIENT.CAPABILITIES  

以下示例显示了在配置负载平衡的令牌方法时,Citrix ADC DataStream 功能的工作原理。

图 1. DataStream 和负载平衡的令牌方法

负载平衡的令牌方法

在此示例中,令牌是数据库的名称。带有令牌簿的请求将发送到数据库 Server1,并将带有令牌音乐的请求发送到数据库 Server2。带有令牌簿的所有后续请求都发送到数据库 Server1,并将带有令牌音乐的请求发送到数据库 Server2。此配置为数据库服务器提供伪持久性。

使用 CLI 配置此示例

在命令提示符下,键入:

add service Service1 192.0.2.9 MYSQL 3306

add service Service2 192.0.2.11 MYSQL 3306

add lb vserver token_lb_vserver MYSQL 192.0.2.15 3306 -lbmethod token -rule MYSQL.CLIENT.DATABASE

bind lb vserver token_lb_vserver Service1

bind lb vserver token_lb_vserver Service2
<!--NeedCopy-->

使用 GUI 配置此示例

  1. 导航到流量管理 > 负载平衡 > 虚拟服务器,配置虚拟服务器,然后将协议指定为 MYSQL
  2. 单击服务部分,然后配置两个将协议指定为 MYSQL 的服务。将这些服务绑定到虚拟服务器。
  3. 高级设置中,单击方法,然后在负载平衡方法列表中选择令牌,然后将表达式指定为 MYSQL.CLIENT.DATABASE
用例 2: 为 DataStream 配置负载平衡的令牌方法