内存到内存复制
内存到内存会话复制是到另一个 WebSphere® Application Server 的会话复制。在此方式下,可以将会话复制到一个或多个 Application Server 以解决 HTTP 会话单点故障 (SPOF)。
当前处理会话的 WebSphere Application Server 实例称为会话所有者。在集群环境中,WebSphere Application Server 插件中的会话亲缘关系将给定会话的请求路由至同一服务器。如果当前所有者服务器实例对会话请求失败,那么 WebSphere Application
Server 插件将请求路由到集群中另一台适当的服务器。
在对等集群中,热故障转移功能导致插件故障转移到已包含会话备份副本的服务器,从而避免从另一台包含备份的服务器检索会话的开销。在客户机/服务器集群中,服务器从具有会话备份副本的服务器检索会话。现在,该服务器成为会话所有者,并在现在维持到此服务器的亲缘关系。
当前处理会话的 WebSphere Application Server 概要文件称为会话所有者。在集群环境中,WebSphere Application Server 插件中的会话亲缘关系将给定会话的请求路由至同一服务器。如果会话的当前所有者服务器概要文件失败,那么 WebSphere Application Server 插件将请求路由至集群中的另一台适当的服务器。在对等集群中,热故障转移功能导致插件故障转移到已包含会话备份副本的服务器,从而避免从另一台包含备份的服务器检索会话的开销。在客户机/服务器集群中,服务器从具有会话备份副本的服务器检索会话。现在,该服务器成为会话所有者,并在现在维持到此服务器的亲缘关系。
- 服务器方式:仅存储其他 WebSphere Application Server 会话的备份副本且不发送在该特定服务器中创建的任何会话的副本
- 客户机方式:仅广播或发送会话自己拥有的会话副本而不从其他服务器接收会话的备份副本
既是服务器又是客户机方式:同时广播或发送它自己拥有的会话副本,并作为其他 WebSphere Application Server 实例拥有的会话的备份表。
既是服务器又是客户机方式:同时广播或发送它自己拥有的会话副本,并作为其他 WebSphere Application Server 概要文件拥有的会话的备份表。
通过在应用程序服务器(该应用程序服务器与远程应用程序服务器中的其他数据复制服务实例通话)中创建数据复制服务实例来完成内存到内存复制功能。您必须将此数据复制服务实例配置为复制域的一部分。对于相互之间进行复制的不同类型应用程序服务器,必须将这些服务器上的数据复制服务实例配置为属于同一个域。您必须将连接到复制域的所有会话管理器配置为具有相同的拓扑。如果域中的一个会话管理器实例配置为使用客户机/服务器拓扑,那么该域中的其余会话管理器实例必须是配置为“仅客户机”和“仅服务器”的服务器的组合。如果一个会话管理器实例配置为使用对等拓扑,那么所有会话管理器实例必须配置为“既是客户机也是服务器”。例如,同一复制域中不能存在仅服务器数据复制服务实例以及客户机和服务器数据复制服务实例。由于各种级别(他们配置为同一域的一部分)上的会话管理器内存到内存配置,在同一应用程序服务器上存在多个数据复制服务实例,这些实例必须有同一方式。
尽管管理控制台提供了灵活行以及支持其他可能的内存到内存复制配置,但仅正式支持提供的配置。
缺省情况下,集群中有单个副本。您可以通过复制域修改副本数。
![[z/OS]](../images/ngzos.gif)
控制器中的 HTTP 会话复制
在 z/OS® 上,启用了 HTTP 会话内存到内存复制功能的 WebSphere Application Server 可以将复制的 HTTP 会话数据存储在控制器中并将该数据复制到其他 WebSphere Application Server。控制器的任何服务方都可以检索存储在该控制器中的 HTTP 会话数据。HTTP 会话亲缘关系仍与特定服务方相关联;但是,如果该服务方对会话请求失败,任何其他服务方都可以检索存储在控制器中的 HTTP 会话数据并建立新的亲缘关系。
在 z/OS 上的非受管应用程序服务器中,也可以启用在控制器中存储 HTTP 会话的功能。 启用此功能后,服务方会将 HTTP 会话数据存储在控制器中以便在某个服务方失败时检索,这与受管服务器类似。非受管应用程序服务器的控制器中存储的 HTTP 会话数据不能由其他应用程序服务器检索,这些数据也不会被复制到其他应用程序服务器。
在非受管应用程序服务器的控制器中存储 HTTP 会话数据的功能是通过将 JVM 定制属性 HttpSessionEnableUnmanagedServerReplication 设置为 true 启用的。可以在服务器 > 应用程序服务器 > server_name 中设置此属性。然后,在“服务器基础结构”下单击 Java 和进程管理 > 进程定义 > 服务方 > Java 虚拟机 > 定制属性。