Java客户端直接连接支持,确保与 Db2 for z/OS 服务器

服务器上的Sysplex工作负载平衡功能 Db2 for z/OS 服务器上的Sysplex工作负载平衡功能为直接连接到数据共享组的客户端应用程序提供了高可用性。 综合系统工作负载均衡功能提供了工作负载均衡和客户机自动重新路由功能。 这种支持适用于使用Java客户端( JDBC、SQLJ或 pureQuery® )且使用 IBM® Data Server Driver for JDBC and SQLJ 类型4连接的应用程序,或非Java客户端( ODBC、CLI、.NET、OLE DB、PHP、Ruby或嵌入式SQL)。 工作负载均衡对于应用程序是透明的。

系统集群是一组 z/OS 系统,通过特定的多系统硬件组件和软件服务相互通信和协作,以处理客户的工作负载。 Db2 for z/OSz/OS 系统中的子系统可以配置为数据共享组。 通过数据共享,在多个 Db2 for z/OS 子系统上运行的应用程序可以同时读取和写入同一组数据。 一个或多个耦合设施为数据共享组提供高速缓存和锁定处理。 sysplex与Workload Manager(WLM)、动态虚拟IP地址(DVIPA)和sysplex Distributor一起,允许客户端通过网络弹性访问 Db2 for z/OS 数据库,具有网络弹性,并通过TCP/IP协议将事务以均衡的方式分配给数据共享组中的成员。

这些功能的中心是一个服务器列表,数据共享组在连接边界上返回,还可在事务边界上返回。 此列表包含每个数据共享组成员的 IP 地址和 WLM 权重。 通过此信息,客户机可以均衡地分发事务,或标识在发生通信故障时要使用的成员。

服务器列表将在首次成功连接到 Db2 for z/OS 数据服务器时。 在客户机接收到服务器列表之后,客户机根据服务器列表中的信息直接访问数据共享组成员。

Db2 for z/OS 为客户提供多种访问数据共享组的方法。 为与数据共享组进行通信而设置的访问方法确定是否可能进行综合系统工作负载均衡。 下表列出了访问方法,并指示综合系统工作负载均衡是否可行。

表 1. 数据共享访问方法和综合系统工作负载均衡
数据共享访问方法 1 描述 是否可能进行综合系统工作负载均衡?
组访问权 请求者使用 Db2 组IP地址与该 Db2 for z/OS 位置。 如果至少启动了一个成员,那么与使用组 IP 地址和 SQL 端口的数据共享组的连接始终成功。 数据共享组返回的服务器列表包括:
  • 当前活动且可以执行工作的成员列表
  • 每个成员的 WLM 权重
组IP地址使用 z/OS sysplex分发器进行配置。 对于系统外部的客户,系统经销商提供一个代表 Db2 位置。 除了提供故障容错外,还可以将综合系统分发器配置为提供连接负载均衡。
组子集访问 请求者使用位置别名来与别名表示的某个成员建立初始连接。 如果至少有一个成员启动,并且该成员已准备好TCP/IP侦听器,且能够接受别名SQL端口上的新连接,则使用组IP地址和别名SQL端口的共享数据组连接成功。 数据共享组返回的服务器列表包括:
  • 当前的活动成员列表,这些成员可以执行工作,并且已配置为别名
  • 每个成员的 WLM 权重
请求者使用此信息来连接与位置别名相关联的容量最多的成员。 当请求者需要利用数据共享组的一部分成员之间的综合系统工作负载均衡时,会使用组子集访问权。
特定于成员的访问 当请求者只需要访问一个数据共享组的成员时,将使用特定于成员的访问权。 对于特定于成员的访问,此连接使用特定于成员的 IP 地址。 要使用会员专用访问权限, IBM Data Server Driver for JDBC and SQLJ 属性 enableSysplexWLB 和 enableConnectionConcentrator 必须设置为 false False
注:
  1. 有关数据共享访问方法的更多信息,请参阅 TCP/IP访问方法,用于 Db2 数据共享

综合系统工作负载均衡包括自动客户机重新路由:自动客户机重新路由支持使客户机能够从故障中恢复,方法是通过综合系统的任何可用成员重新连接到数据服务器。 重新连接到另一个成员称为故障转移。 当重新路由应用程序时,自动客户机重新路由可以是无缝的,并且数据共享成员发生网络故障后,应用程序不会接收到错误。 例如,当成员被关闭以进行维护时,可以自动重新无缝路由。

对于Java、CLI或.NET客户端应用程序,自动客户端重路由的故障切换可以是无缝的 ,也可以是非无缝的。 无缝故障转移意味着当应用程序成功地重新连接到备用服务器时,服务器不会向应用程序返回错误。

通过无缝故障切换, IBM Data Server Driver for JDBC and SQLJ 在新服务器上设置旧服务器上的应用环境。 此环境包含专用寄存器值和全局变量值。

使用 Db2 Connect 服务器实现高可用性的客户端直接连接支持: 客户端直接连接支持高可用性需要 Db2 Connect 许可证,但不需要 Db2 Connect 服务器。 客户直接连接到 Db2 for z/OS

如果您使用 Db2 Connect服务器 ,但将您的环境设置为客户端高可用性,则无法利用直接连接到 Db2 for z/OS 提供的某些功能,例如事务级工作负载平衡或由sysplex提供的自动客户端重新路由功能。

对sysplex工作负载平衡和客户端自动重路由的限制 :当连接到数据服务器的Java应用程序引用或设置全局变量时,该变量是用户定义的数组类型或LOB,数据服务器将禁用数据共享组中的事务平衡。 Db2 for z/OS 数据服务器引用或设置全局变量,而该变量是用户定义的数组类型或LOB时,数据服务器将禁用数据共享组中的事务平衡。 数据服务器在成员发生故障或被迫关闭后阻止客户机自动重新路由。 线程保持活动状态,直到应用程序从数据服务器断开连接为止。