Ir al contenido

Publish-subscribe pattern

De Wikipedia, la enciclopedia libre

El patrón Publish-Subscribe (pub-sub) es un patrón de diseño de software que permite la comunicación asíncrona entre múltiples componentes de una aplicación. Este patrón desacopla a los emisores de mensajes (publicadores) de los receptores de mensajes (suscriptores), de manera que no necesitan conocerse entre sí directamente. Es comúnmente usado en sistemas de mensajería, notificaciones y arquitectura de microservicios.[1]

Componentes principales del patrón pub-sub:

[editar]
  1. Publicador (Publisher): Es el componente que genera y envía mensajes a un canal o sistema de mensajería sin preocuparse de quién los va a recibir.
  2. Suscriptor (Subscriber): Es el componente que se registra (o suscribe) para recibir ciertos tipos de mensajes o eventos. Cada vez que se publica un mensaje en el que está interesado, lo recibe.
  3. Canal o Broker: Es el intermediario entre los publicadores y los suscriptores. El broker es responsable de recibir los mensajes de los publicadores y distribuirlos a los suscriptores adecuados, basándose en el tipo de mensaje o en reglas predefinidas.

Funcionamiento básico:

[editar]
  1. Publicación: Un publicador envía un mensaje o evento al canal.
  2. Suscripción: Un suscriptor se registra en el canal indicando que quiere recibir mensajes de un tipo particular.
  3. Distribución: El canal entrega los mensajes a todos los suscriptores que se han registrado para ese tipo de mensaje.

Características clave:

[editar]
  • Desacoplamiento: Los publicadores y los suscriptores no están directamente conectados ni dependen unos de otros. El broker o canal es quien se encarga de manejar la distribución de los mensajes.
  • Escalabilidad: El patrón permite que múltiples suscriptores reciban mensajes de un publicador sin que este tenga que preocuparse por la cantidad de destinatarios.
  • Flexibilidad: Es fácil agregar nuevos suscriptores o eliminar existentes sin cambiar la lógica del publicador.

Referencias

[editar]
  1. ERUL, Emrullah; IŞIN, Alper (28 de marzo de 2023). «ChatGPT ile Sohbetler: Turizmde ChatGPT nin Önemi (Chats with ChatGPT: Importance of ChatGPT in Tourism)». Journal of Tourism and Gastronomy Studies. ISSN 2147-8775. doi:10.21325/jotags.2023.1217. Consultado el 18 de septiembre de 2024.