En este artículo se describe el patrón de programación de Partitioning Facility (WPF) en WebSphere Extended Deployment para z/OS V6.0.1.
Como el direccionamiento WPF-WLM IIOP (Internet Inter-ORB Protocol) no está soportado en WebSphere Extended Deployment para z/OS V6.0.1, las aplicaciones deben manejar el direccionamiento de particiones utilizando la tecnología JMS (Java Message Service) u otros mecanismos.
El mecanismo de direccionamiento basado en JMS (Java Message Service) se ilustra en la siguiente figura. Se muestran dos peticiones, la petición 1 y la petición 2. Observe que cada petición debe ir a un tema/cola JMS designado para el direccionamiento de particiones. El tema/cola JMS debe reenviar la petición a la partición de destino, que se prepara para procesar la petición y envía la respuesta a un tema/cola JMS designado para direccionar las respuestas. Aunque los pasos de la ejecución son los mismos, el orden de la ejecución de peticiones no está garantizado, ya que la ejecución depende de muchos factores, por ejemplo, la ubicación de la máquina, el rendimiento del servidor y la configuración de la red.
Las rutas de petición de las peticiones 1 (1-1.3) y 2 (2-2.3) se muestran en el siguiente gráfico, lo que hace que el Appclient obtenga las respuestas (3).
Los pasos siguientes describen la ruta de la petición 1. Observe que la petición 2 y otras peticiones siguen la misma ruta. Cada ejecución de petición es independiente de las demás y el orden en el que se reciben no está garantizado.
Las particiones de aplicaciones en ClusterMembers están enlazadas y siempre escuchan al tema/cola JMS correspondiente (utilizando AsyncBean). Por ejemplo, en la Partición 1 (P1), las particiones de aplicaciones reciben los mensajes JMS siempre que llegan nuevos mensajes al tema/cola JMS correspondiente.
De la misma forma que las aplicaciones normales habilitadas para WPF, existe un bean de sesión sin estado particionado (PSSB) que implementa la interfaz PartitionHandlerLocal. Los métodos partitionLoadEvent(String partitionName) y partitionUnloadEvent(String partitionName) de la interfaz PartitionHandlerLocal son los puntos para enlazar y desenlazar una partición con un tema/cola JMS.
partitionLoadEvent(String partitionName) - indica que la partición con el mismo nombre que el partitionName pasado se activa en el sistema. Inicie o active la hebra de trabajo de la partición (o puede utilizar la hebra de trabajo de AsyncBean) que está enlazada con el tema/cola JMS designado para la partición partitionName. Debe mantener una referencia a la hebra de trabajo de la partición para detenerla o destruirla cuando se produzca el partitionUnloadEvent correspondiente.
partitionUnloadEvent(String partitionName) - indica que la partición con el mismo nombre que el partitionName pasado se desactiva en el sistema. La hebra de trabajo de la partición se desenlazará con el tema/cola JMS designado para la partición partitionName, y detendrá o destruirá la hebra de trabajo de la partición correspondiente.
Related concepts
Restricciones
de z/OS en WPF