Introducción al curso

1

Diseño y Documentación de Arquitectura de Software

Atributos de calidad

2

Atributos de Calidad en Sistemas: Definición y Medición

3

Idoneidad Funcional: Completitud, Exactitud y Pertinencia

4

Eficiencia de Ejecución en Sistemas Informáticos

5

Compatibilidad en Sistemas: Interoperabilidad y Coexistencia

6

Subcaracterísticas de Usabilidad en Desarrollo de Software

7

Confiabilidad de Sistemas: Madurez, Disponibilidad, Resiliencia y Recuperación

8

Seguridad de Usuarios en Desarrollo de Software

9

Subcaracterísticas de Mantenibilidad en Sistemas de Software

10

Medición de Adaptabilidad en Sistemas de Software

11

Relación y Tensión entre Atributos de Calidad en Sistemas de Software

12

Atributos de Calidad en Arquitectura de Software

Patrones de arquitectura

13

Patrones de Arquitectura Monolítica y Distribuida

14

Modelo Vista Controlador: Separación de Responsabilidades en Aplicaciones

15

Arquitectura de Capas: Diseño y Comunicación entre Niveles

16

Patrones de Arquitectura Orientada a Eventos y Event Sourcing

17

Patrón de Arquitectura MicroKernel y su Implementación en IDEs

18

Arquitectura "Comparte Nada": Optimización y Procesamiento de Datos

19

Patrón de Microservicios en Arquitectura de Software

20

Patrón CQRS para Separación de Consultas y Comandos

21

Arquitectura Hexagonal: Diseño y Aplicación Práctica

22

Diseño Orientado al Dominio: Conceptos y Aplicaciones Prácticas

23

Patrones de Arquitectura para Aplicaciones Escalables y Modulares

24

Patrones de Arquitectura en Proyectos de Crecimiento Empresarial

Diseño de una arquitectura

25

Diseño de Arquitecturas a Medida: Herramientas y Estrategias

26

Tipos de Conectores en Arquitectura de Software

27

Conectores Asíncronos y Sincrónicos: Implementación y Uso Práctico

28

Diferencias entre Enrutadores y Difusores en Comunicación de Mensajes

29

Conexión de Productores y Consumidores con Colas de Mensajes

30

Framework de Diseño Orientado a Atributos: Escenarios y Tácticas

31

Tácticas para Mejorar la Disponibilidad de Sistemas

32

Tácticas para Mejorar la Disponibilidad del Sistema

33

Tácticas para Mejorar la Mantenibilidad del Software

34

Prevención de Efectos Dominó en Mantenibilidad de Software

35

Estrategias para Mejorar la Eficiencia de Ejecución en Sistemas

36

Tácticas de Seguridad Informática para Detectar, Resistir y Recuperarse de Ataques

37

Estrategias para Mejorar la Capacidad de Prueba de Software

38

Tácticas de Usabilidad en Diseño de Interfaces de Usuario

39

Validación de Arquitectura con ATAM y Métricas de Calidad

40

Diseño de Arquitectura para Startups y Empresas Escalables

Modelado y documentación de arquitectura

41

Documentación Efectiva de Arquitectura de Software

42

Sincronización de Modelos de Arquitectura y Código Fuente

43

Evaluación de Atributos de Calidad en Arquitectura de Software

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Diferencias entre Enrutadores y Difusores en Comunicación de Mensajes

28/43
Recursos

¿Qué es un conector enrutador?

Un conector enrutador es un componente esencial en sistemas de comunicación que facilita la conexión entre un emisor de mensajes y un conjunto específico de receptores interesados en esos mensajes. Su función principal es saber a quién exactamente le interesa un mensaje particular y asegurarse de que solo ese receptor (o receptores) lo reciban. Esta inteligencia le permite optimizar el proceso de entrega de mensajes, asegurando que cada uno llegue solo a las partes interesadas correspondientes.

¿Cómo funciona un conector enrutador?

  • Inteligencia de entrega: El enrutador cuenta con la inteligencia suficiente para analizar el mensaje y determinar cuál es el componente (o componentes) que deben recibirlo.
  • Selección específica de destinatarios: En lugar de enviar el mensaje a todos los receptores posibles, el enrutador lo dirige únicamente a aquellos que lo han solicitado o necesitan.

Por ejemplo, en aplicaciones como Twitter, un enrutador decide a qué base de datos Redis llegará un mensaje específico, siendo cada base de datos un componente que representa la línea de tiempo de un usuario en particular.

¿Qué es un conector de difusión?

A diferencia de un enrutador, un conector de difusión toma un mensaje de un emisor y lo distribuye a muchos componentes interesados. Esto significa que el mensaje es enviado a todos los receptores posibles, permitiendo que cada uno de ellos decida si el contenido es relevante o no.

¿Cuándo usar un conector de difusión?

  • Mensajes públicos: Suele utilizarse cuando los mensajes deben llegar a todos los componentes posibles, para que ellos mismos determinen su interés.
  • Redes sociales y plataformas públicas: En Twitter, por ejemplo, cada mensaje público se difunde para que varios componentes que están escuchando todos los mensajes puedan procesarlos y decidir si son de interés.

Comparación entre el conector enrutador y el conector de difusión

Diferencias clave

  1. Función de filtrado:
    • El enrutador actúa como un filtro inicial, seleccionando a qué componentes enviar el mensaje desde el principio.
    • El difusor, en cambio, envía el mensaje a todos los componentes, dejando que cada uno decida su relevancia.
  2. Inteligencia del sistema:
    • En los sistemas de enrutamiento, la "inteligencia" reside en el conector, que decide el destino del mensaje.
    • En los sistemas de difusión, la "inteligencia" está en cada componente receptor, que analiza el mensaje una vez recibido.

Casos de uso en la vida real

  • Twitter como ejemplo: Twitter utiliza ambos tipos de conectores para distintas funcionalidades.
    • Enrutador: Decide qué línea de tiempo recibirá un tweet de un usuario específico.
    • Difusión: Permite que un mensaje público llegue a todos los componentes para ser evaluado individualmente.

Reflexiones finales

Comprender la función y aplicación de conectores enrutadores y de difusión es esencial para diseñar plataformas de comunicación eficientes y personalizables. Estos conceptos son fundamentales en el desarrollo de sistemas distribuidos, donde la eficiencia en la entrega de mensajes y el manejo del tráfico de datos pueden marcar la diferencia en la experiencia del usuario. Como siempre, en el mundo de la tecnología, seguir aprendiendo e investigando nuevas metodologías y herramientas será tu mejor aliado para el éxito.

Aportes 9

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Enrutador:

Lo que va facilita es la conexión en un componente que emite un mensaje y un set específico de componentes que les interesa ese mensaje.

Pero en realidad van a haber muchos componentes receptores y el enrutador va a saber cuáles les interesa ese mensaje. Es decir, va a tener la inteligencia suficiente para entender ese mensaje y a quien tiene que llegar. Puede ser a un solo componente de destino o a muchos.

Difusión:

El conector de tipo difusión, es un conector que dado un mensaje de un emisor, lo difunde a muchos otros componentes interesados.

Ejemplo:

Si tenemos que analizar la diferencia entre el Enrutador y el Difusor, podemos poner un ejemplo: Twitter.

Twitter: Tiene los dos casos para diferentes funcionalidades.

- Si un usuario que seguimos, escribe un mensaje, hay un enrutador, que está decidiendo a qué base de datos redis va a llegar ese mensaje, donde cada base de datos es un componente que es la timeline de los usuarios que lo siguen.

-  Cada mensaje que se manda, que es público, se hace difusión de ese mensaje, y luego, varios componentes que están escuchando todos los mensajes públicos, van a tener la inteligencia para ver si ese mensaje le es importante o no a ese componente. 

La diferencia está si el componente es inteligente y recibe todos los mensajes y luego decide (Difusión), o si el conector es inteligente y decide a quien tiene que mandar ese mensaje (Enrutador). 

Conectores.

Enrutador
Facilita la conexión entre un componente que emite un mensaje y entre un set especifico de componentes que les interesa el mensaje. El enrutador sabe de entre todos los componentes a cuales les interesa.

Difusión
Dado el mensaje de un emisor, lo difunde a muchos otros componentes interesados.

Apuntes:

Enrutador, difusión

Enrutador. Va a facilitar la conexión entre un componente que emite un mensaje y un set específico de componentes que les interesa este mensaje. Pero en realidad va a haber muchos conectores y el enrutador va a tener la inteligencia suficiente para entender este mensaje y saber a quién le tiene que llegar.

Difusión. Es un conector que dado un mensaje de un emisor lo difunde a muchos otros componentes interesados.

En un difusor la “inteligencia” esta en los demas componentes.
En un enrutador la “inteligencia” esta en el mismo enrutador.

  • Conector Enrutador: Facilita la comunicación de un componente emisor que emite un mensaje y un set especifico de componentes que le interesa ese mensaje; Pero en realidad existen muchos componentes receptores y el emisor va a saber a cuales le interesa el mensaje.
  • Conector Difusión: dado la emisión de un componente emisor lo difunde a muchos componentes receptores.
  • Enrutador: facilta el envio de mensajes entre un componente emisor y un set de potenciales componentes destinatarios, decidiendo a quien o quienes les llega dicho mensaje.

  • Difusor: difunde mensajes desde un componente emisor, a un set de potenciales componentes destinatarios, siendo estos ultimos quienes deciden si les interesa o no el mensaje.

Este es el concepto que utiliza Messaging Center de Xamarin Forms?

🤖🤖🤖
Conectores:
• Enrutador:
Facilita la conexión entre un componente que emite un mensaje y un set de componentes que les interesa el mensaje.

• Difusión:
Dado un mensaje de un emisor lo difunde a muchos otros de componentes interesados.

El enrutador: va a mandar mensaje a ciertos componentes.
y el difusor :manda mensajes a todos.