Carga de trabajo compartida con mensajería de publicación/suscripción
En la mensajería de publicación/suscripción, el sistema de mensajería envía una copia de cada mensaje publicado a cada suscripción coincidente. Los suscriptores, es decir, las aplicaciones que consumen mensajes de publicación/suscripción, consumen esos mensajes de una suscripción individual. Para equilibrar la carga de trabajo entre varias instancias de una aplicación, por ejemplo cuando se ejecuta una aplicación en un clúster de servidores, todas las instancias de la aplicación deben utilizar la misma suscripción.
La Figura 1 muestra que, en esta configuración, solo una instancia de la aplicación procesa cada mensaje que se envía a la suscripción. Sin embargo, la Figura 2 muestra que si se configuran diferentes instancias de la misma aplicación para recibir los mensajes de suscripciones diferentes, cada instancia procesa una copia de cada mensaje coincidente, de modo que cada mensaje se distribuye (en abanico).


Para mensajes punto a punto, puede utilizar los destinos de cola y particionar una cola de modo que la carga de trabajo de los mensajes se equilibre. Sin embargo, no puede particionar las suscripciones de esta forma.
En la mensajería de publicación/suscripción, para configurar que varias instancias de aplicación utilicen la misma suscripción y, por consiguiente, se equilibre la carga de trabajo de los mensajes, debe utilizar una suscripción duradera. Las diversas instancias de la aplicación deben ser capaces de consumir simultáneamente desde la misma suscripción. Este tipo de suscripción se denomina suscripción duradera compartida. Para configurar una suscripción duradera compartida, establezca la propiedad Compartir suscripciones duraderas para la fábrica de conexiones relevantes o la especificación de activación.
Una suscripción duradera tiene un motor de mensajería inicial y una identidad exclusiva, que está formada a partir de la identidad del cliente y el nombre de suscripción. El sistema de mensajería puede acumular las publicaciones coincidentes nuevo para la suscripción aunque no haya ningún suscriptor activo. El motor de mensajería de inicio acumula mensajes para una suscripción utilizando un punto de publicación. Cuando un suscriptor se inicia o se reinicia, el sistema de mensajería utiliza la identidad exclusiva y el motor de mensajería inicial para identificar el punto de publicación, buscar la suscripción duradera y entregar los mensajes acumulados.
Una suscripción duradera no tiene una identidad exclusiva. Dura el tiempo que dura su suscriptor. Varias instancias de aplicación no pueden recibir mensajes de la misma suscripción duradera.
- En clúster
- El bus distribuye trabajo entre los clientes que se conectan a un miembro de bus en el mismo clúster cuando los clientes utilizan el mismo identificador de cliente y el nombre de suscripción duradera.
- Siempre compartidas
- El bus distribuye trabajo entre los clientes, independientemente de dónde se conectan al bus, cuando los clientes utilizan el mismo identificador de cliente y el nombre de suscripción duradera.
- Nunca compartidas
- Los clientes no pueden utilizar el mismo identificador de cliente y el nombre de suscripción duradera que una sesión existente.