Utilice la memoria caché global que se proporciona con WebSphere Message Broker para almacenar datos que desea reutilizar.
La memoria caché global está incluida en el intermediario. De forma predeterminada, la memoria caché está inhabilitada; para utilizar la memoria caché, seleccione una política de memoria caché adecuada. La política de memoria caché predeterminada crea una topología predeterminada de los componentes de memoria caché en un solo intermediario. Las alternativas a la topología predeterminada son no tener ninguna política, para que se pueda controlar su propia topología estableciendo propiedades de memoria caché en los grupos de ejecución o para utilizar un archivo de política XML para habilitar la memoria caché en varios intermediarios.
De forma predeterminada, un grupo de ejecución del intermediario contiene un servidor de catálogo. El servidor de catálogo controla la colocación de los datos y supervisa la salud de los servidores de contenedor. Como máximo otros tres grupos de ejecución de dicho intermediario contienen servidores de contenedor. Un servidor de contenedor es un componente que se incluye en el grupo de ejecución que contiene un subconjunto de los datos de memoria caché. El servidor de catálogo y los servidores de contenedor se colocan en grupos de ejecución de forma dinámica cuando se inicia el intermediario. Todos los grupos de ejecución pueden comunicarse con la memoria caché global, independientemente de si alojan servidores de catálogo, servidores de contenedor o ninguno de ellos. Cada grupo de ejecución contiene un gestor de caché, que gestiona los componentes de memoria caché que están incluidos en ese grupo de ejecución. Para obtener una descripción de los componentes de memoria caché, consulte Terminología de almacenamiento en memoria caché de datos.
Cuando se utiliza la topología predeterminada, las propiedades de memoria caché para grupos de ejecución son de sólo lectura; se emite un error si intenta cambiarlas. Cuando se utiliza la topología predeterminada, puede especificar el rango de puertos utilizado por el gestor de memoria caché y el host de escucha utilizado por los componentes de memoria caché. Si el sistema tiene más de un nombre de host, el establecimiento del host de escucha asegura que los componentes de memoria caché utilicen el nombre de host correcto. Para establecer propiedades específicas para el grupo de ejecución, primero debe cambiar la propiedad de política de memoria caché a none. Las propiedades de grupo de ejecución establecidas más recientemente por la política a nivel de intermediario se mantienen como punto de partida para la personalización.
Puede establecer propiedades de forma explícita para cada grupo de ejecución. Por ejemplo, es posible que desee especificar grupos de ejecución determinados para alojar los servidores de catálogo y contenedor a fin de poder ajustar el rendimiento de intermediario. Cuando la política de memoria caché se establece en none, el gestor de memoria caché de cada grupo de ejecución utiliza los valores que ha establecido. Las propiedades de grupo de ejecución establecidas más recientemente por la política a nivel de intermediario se mantienen como punto de partida para la personalización.
Si detiene el grupo de ejecución que contiene el servidor de catálogo, la memoria caché deja de estar disponible y los datos de la memoria caché se pierden. Por consiguiente, si desactiva la topología predeterminada, asegúrese de colocar el servidor de catálogo de manera apropiada. Si reinicia el grupo de ejecución que contiene el servidor de catálogo, ya no puede comunicarse con los servidores de contenedor de otros grupos de ejecución. Aunque estos servidores de contenedor siguen en ejecución, ya no son parte de la memoria caché y los datos se pierden. Por lo tanto, también tendrá que reiniciar los grupos de ejecución que alojan los servidores de contenedor. Alternativamente, reinicie el intermediario para restablecer todos los componentes de memoria caché.
Cuando utiliza una memoria caché global que abarca varios intermediarios, asegúrese de que todos los servidores de WebSphere eXtreme Scale que están agrupados en clúster en una cuadrícula incorporada utilicen el mismo nombre de dominio. Sólo los servidores con el mismo nombre de dominio pueden participar en la misma cuadrícula. Los clientes de WebSphere eXtreme Scale utilizan el nombre de dominio para identificar y distinguir entre cuadrículas incluidas. Si no especifica un nombre de dominio en el grupo de ejecución o en el archivo de política de nivel de intermediario, el intermediario crea un nombre basado en los nombres de servidor de los servidores de catálogo.
De forma predeterminada, cada servidor se inicia con un nombre de dominio que se deriva del intermediario. En las versiones anteriores de WebSphere Message Broker, el nombre de dominio para todos los servidores en todas las memorias caché incluidas era una serie vacía. Los servidores de diferentes dominios no pueden colaborar en la misma cuadrícula. Por lo tanto, para una memoria caché que abarque varios intermediarios, migre estos intermediarios al mismo tiempo.
Puede configurar la memoria caché global utilizando mandatos de WebSphere Message Broker, WebSphere Message Broker Explorer o la API de Message Broker. Para obtener más información, consulte Configurar la memoria caché global incorporada.
Para inhabilitar todos los componentes de memoria caché en el intermediario estableciendo la propiedad de política de memoria caché en disabled. La política de memoria caché se establece en disabled de forma predeterminada.
Puede utilizar nodos JavaCompute para almacenar y recuperar datos de una correlación en la memoria caché global. Cuando se obtiene una correlación global de una cuadrícula externa, el método getGlobalMap establece una conexión con la cuadrícula si aún no existe una. Para obtener más información, consulte Acceso a la memoria caché global con un nodo JavaCompute.
Cuando se obtiene un objeto MbGlobalMap, también se puede especificar cuánto tiempo permanecen los datos en la memoria caché global antes de que se eliminen automáticamente. Este tiempo se conoce como el tiempo de vida y se cuenta a partir de la fecha de última actualización de esa entrada de correlación. El valor se aplica a todas las entradas de memoria caché que se crean utilizando ese objeto MbGlobalMap en esa instancia del flujo de mensajes. Los datos que ya están en la correlación que especifique, o que se crean mediante otro objeto MbGlobalMap, no se ven afectados por el valor de tiempo de vida. Puede crear varios objetos MbGlobalMap en diferentes flujos, grupos de ejecución o intermediarios, que se resuelvan todos en la misma correlación en la memoria caché global, pero con distintos valores de tiempo de vida.
De forma predeterminada, el tiempo de vida se establece en cero para que los datos no se eliminen nunca. Para establecer un tiempo de vida específico, cree una política de sesión, a la que puede hacer referencia desde el objeto MbGlobalMap. Para obtener instrucciones detalladas, consulte Eliminar datos de la memoria caché global.