Problema: cómo proporcionar un servicio de pub/sub distribuido, escalable y resistente a desastres con WCF.WCF Pub/Sub con caché de suscriptor
Detalles:
Tenga en cuenta que este enfoque se está considerando, además de soluciones de mensajería/middleware como TIBCO EMS.
He estado buscando en WCF, particularmente cómo se puede utilizar para ofrecer pub/sub. Sobre este tema, este artículo es muy bueno: WCF pub-sub.
En el artículo, el autor intenta abordar el problema de tener varios editores (como se hubiera hecho con una capa de servicio escalada en varios cuadros). El problema es que si el cliente A se registra con Publisher A pero Publisher B desea publicar un evento, entonces el editor B no sabrá sobre el cliente A. es decir, nadie le dijo al editor B que el cliente A quería recibir una notificación sobre los eventos. El autor sugiere un servicio pub/sub como una solución. El servicio pub/sub almacenaría suscripciones centralmente. Sin embargo, si quería hacer que el servicio de pub/sub resistente fuera resistente al tener un servicio secundario/dual de pub/sub, entonces tengo el mismo problema original.
Por lo tanto, creo que hay un par de soluciones al problema:
- detalles tienda de abonado en una memoria caché distribuida (ver preguntas: q1 y q2).
- Almacenar detalles del suscriptor en una base de datos/sistema de archivos central.
¿Alguien puede pensar en otras soluciones (es decir, no he echado de menos alguna característica fantástica mágica de WCF?) Cualquier comentario apreciados.