Lección 3: Mensajería de baja latencia II Flashcards

1
Q

Cuando utilizamos grupos de balanceo de carga, el mensaje debe llegar a un receptor de cada uno de los grupos de balanceo.

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cuales de las siguiente afirmaciones son problemas de utilizar topología de comunicación broadcast?

Seleccione una o más de una:

a. Puedo recibir mensajes en los que no estoy interesado si no se han distribuido bien los grupos multicast
b. Son muy difíciles de monitorizar
c. Son muy difíciles de securizar

A

a. Puedo recibir mensajes en los que no estoy interesado si no se han distribuido bien los grupos multicast
b. Son muy difíciles de monitorizar
c. Son muy difíciles de securizar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Todos los mecanismos de comunicación de baja latencia están basados en “topics”

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Cuales de las siguientes características son propias de la solución de mensajería Aeron?

Seleccione una o más de una:

a. Soporta “reliable unicast”, “reliable multicast” e IPC como protocolos de comunicación
b. Se configura mediante ficheros XML
c. Utiliza librerías nativas para mejorar el rendimiento
d. Es una solución Open Source basada en librerías
e. Utiliza una pieza centralizada por máquina (Media Driver) para desacoplar las comunicaciones y los clientes
f. Ofrece de caja mecanismos de balanceo, late join o persistencia entre otros

A

a. Soporta “reliable unicast”, “reliable multicast” e IPC como protocolos de comunicación
d. Es una solución Open Source basada en librerías
e. Utiliza una pieza centralizada por máquina (Media Driver) para desacoplar las comunicaciones y los clientes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

En topología basada en concentrador únicamente tenemos un concentrador o “punto central” para la distribución de mensajes.

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Los mensajes reenviados tras un late join siempre se envían por un canal de comunicaciones diferente al de mensajería normal.
Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cuando usamos balanceo de carga en mensajería necesitamos un agente intermediario que se encargue de balancear el mensaje entre los receptores.
Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Cuando utilizamos ACK’s explícitos, el receptor envía automáticamente un ACK al emisor por cada mensaje o ventana de mensajes para asegurar la garantía de entrega

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

TCP y UDP son dos de los protocolos mas utilizados en topología punto a punto

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

El publicador tras una petición de late-join no siempre puede reenviar todos los mensajes pedidos por el receptor. La posibilidad de reenvío depende de si los mensajes están aún en el buffer del publicador o no.

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

La garantía de entrega se implementa haciendo que el receptor envíe un mensaje de confirmación “ACK” por cada mensaje recibido.

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿De las siguientes características, cuales son propias del sistema de mensajería Solace?

Seleccione una o más de una:

a. Se puede utilizar tanto para baja latencia como para otro tipo de protocolos como JMS o REST
b. Soporta soluciones avanzadas como persistencia, colas, balanceo, etc
c. Su rendimiento es cercano a soluciones software punto a punto
d. Está basado en una solución hardware especializada que centraliza el proceso de mensajes

A

a. Se puede utilizar tanto para baja latencia como para otro tipo de protocolos como JMS o REST
b. Soporta soluciones avanzadas como persistencia, colas, balanceo, etc
c. Su rendimiento es cercano a soluciones software punto a punto
d. Está basado en una solución hardware especializada que centraliza el proceso de mensajes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Por que motivos utilizaría un mecanismo de “colas” en lugar de un balanceo de carga sin intermediarios?

Seleccione una o más de una:

a. Si cae un publicador los receptores pueden seguir consumiendo de la cola
b. Las colas me permiten desacoplar receptores y publicadores, evitando problemas en caso de receptores “lentos”
c. Tiene mejor latencia que el balanceo puro ya que disminuye la mensajería de control
d. Si utilizamos escritura en disco podemos recuperar el estado de un gestor de colas, en balanceo puro en general perdemos la información

A

a. Si cae un publicador los receptores pueden seguir consumiendo de la cola
b. Las colas me permiten desacoplar receptores y publicadores, evitando problemas en caso de receptores “lentos”
d. Si utilizamos escritura en disco podemos recuperar el estado de un gestor de colas, en balanceo puro en general perdemos la información

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

El uso de un concentrador nos puede llevar a situaciones de “cuello de botella” si no lo dimensionamos correctamente.

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Cuales de las siguientes respuestas son desventajas de utilizar topología punto a punto para mensajería?

Seleccione una o más de una:

a. Enviar el mismo mensaje a múltiples receptores requiere múltiples envíos
b. Cada aplicación necesita conocer las cadenas de conexión del resto de aplicaciones lo que dificulta la monitorización
c. Se complica implementar funcionalidades avanzadas como balanceo o alta disponibilidad

A

a. Enviar el mismo mensaje a múltiples receptores requiere múltiples envíos
b. Cada aplicación necesita conocer las cadenas de conexión del resto de aplicaciones lo que dificulta la monitorización
c. Se complica implementar funcionalidades avanzadas como balanceo o alta disponibilidad

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Podemos considerar el balanceo de carga a efectos prácticos como un mecanismo de lata disponibilidad activo-activo

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Cuando dividimos el espacio lógico de comunicaciones en topics, cada topic corresponde con un tipo de transporte específico

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

¿Por cuales de los siguientes motivos utilizaría un demonio de auto-discovery centralizado?

Seleccione una o más de una:

a. No siempre puedo utilizar broadcast en la red
b. Puedo monitorizar de forma centralizada los topics y transportes en uso
c. Introduce menos sobrecarga que los mecanismos de auto-discovery con broadcast

A

a. No siempre puedo utilizar broadcast en la red

b. Puedo monitorizar de forma centralizada los topics y transportes en uso

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Cuales de las siguientes características son propias del sistema de mensajería de ZMQ?

Seleccione una o más de una:

a. Soporta UDP, IPC y Multicast
b. No ofrece soluciones completas “out of the box”, si no una serie de “piezas” configurables que se pueden unir para lograr soluciones a diferentes tipos de problemas de mensajería.
c. Está basado en librerías nativas propietarias
d. Esta basado en topics y utiliza mecanismos de auto-discovery
e. El modelo de programación y curva de aprendizaje son sencillos
f. Tiene soporte para request / response

A

b. No ofrece soluciones completas “out of the box”, si no una serie de “piezas” configurables que se pueden unir para lograr soluciones a diferentes tipos de problemas de mensajería.
f. Tiene soporte para request / response

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Cuales de las siguientes respuestas verdaderas si hablamos de topología basada en concentrador para mensajería?

Seleccione una o más de una:

a. La monitorización es mas sencilla al estar centralizada en el concentrador
b. Es complicado añadir o eliminar clientes de forma dinámica
c. Ofrece mejores latencias en general que la topología punto a punto
d. La configuración de clientes es sencilla ya que únicamente necesitan saber donde está el concentrador

A

a. La monitorización es mas sencilla al estar centralizada en el concentrador
d. La configuración de clientes es sencilla ya que únicamente necesitan saber donde está el concentrador

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Los mecanismos de auto-discovery únicamente se pueden aplicar a comunicaciones de tipo broadcast

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Los gateways con capacidad de “enrutado” suelen ser mejor opción que los que no la tienen ya que podemos duplicar mensajes si utilizamos mas de un gateway para tener alta disponibilidad

Seleccione una:
Verdadero
Falso

A
  • Verdadero
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

En general las soluciones software para baja latencia suelen implicar una menor latencia al no depender de un concentrador. Sin embargo utilizar soluciones hardware tiene sus ventajas respecto a las soluciones basadas en software. Algunas de estas ventajas son:

Seleccione una o más de una:

a. No necesito mecanismos de auto-discovery
b. Al ser centralizadas son mucho mas fáciles de monitorizar y gestionar
c. Son mas baratos que una solución software
d. Las implementaciones hardware de los protocolos me permiten rendimientos muy buenos sobre protocolos confiables
e. Soportan mas protocolos que las soluciones software

A

a. No necesito mecanismos de auto-discovery
b. Al ser centralizadas son mucho mas fáciles de monitorizar y gestionar
d. Las implementaciones hardware de los protocolos me permiten rendimientos muy buenos sobre protocolos confiables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Cuando utilizamos “late join” el emisor reenvía los últimos mensajes al receptor antes de enviar nuevos mensajes

Seleccione una:
Verdadero
Falso

A
  • Falso
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

¿Cuales son las ventajas de utilizar librerías nativas (compiladas para el software/hardware) sobre lenguajes de alto nivel como Java, en lugar de librerías de alto nivel?

Seleccione una o más de una:

a. Ofrecen mas posibilidades de optimización
b. Gestionan su propia memoria, evitando problemas de recolección de basura de los lenguajes de alto nivel
c. Son mas portables que las librerías de alto nivel
d. Suelen ofrecer mejor rendimiento, ya que tienen acceso directo a los recursos del sistema

A

a. Ofrecen mas posibilidades de optimización
b. Gestionan su propia memoria, evitando problemas de recolección de basura de los lenguajes de alto nivel
d. Suelen ofrecer mejor rendimiento, ya que tienen acceso directo a los recursos del sistema

26
Q

De las siguiente topologías, ¿Cuales se utilizan habitualmente en mensajería de baja latencia?

Seleccione una o más de una:

a. Broadcast
b. Con concentrador
c. Bus
d. En anillo
e. Jerárquica
f. Estrella extendida
g. Punto a punto

A

a. Broadcast
b. Con concentrador
g. Punto a punto

27
Q

Cuando utilizamos persistencia en baja latencia, el mensaje primero se persiste y una vez está seguro, el nodo o nodos de persistencia lo envían al receptor.
Seleccione una:
Verdadero
Falso

A
  • Falso
28
Q

¿Cuales de las siguientes afirmaciones son desventajas de utilizar librerías nativas en lugar de lenguajes de alto nivel?

Seleccione una o más de una:

a. No son portables, necesitamos una versión para cada Sistema Operativo y Hardware
b. Depurar es mucho mas complicado
c. Un fallo puede afectar a la máquina virtual del lenguaje de alto nivel de formas no predecibles

A

a. No son portables, necesitamos una versión para cada Sistema Operativo y Hardware
b. Depurar es mucho mas complicado
c. Un fallo puede afectar a la máquina virtual del lenguaje de alto nivel de formas no predecibles

29
Q

Cuando utilizamos persistencia, el mensaje se considera “seguro” únicamente si se ha recibido una confirmación de todos los nodos de persistencia.

Seleccione una:
Verdadero
Falso

A
  • Falso
30
Q

Aunque existen los mecanismos de auto-discovery basados en demonio centralizado, siempre debo utilizar auto-discovery con broadcast para evitar cuellos de botella.

Seleccione una:
Verdadero
Falso

A
  • Falso
31
Q

Los mecanismos de garantía de entrega me permiten estar seguro que el mensaje ha llegado a su destino incluso utilizando protocolos no confiables como UDP

Seleccione una:
Verdadero
Falso

A
  • Verdadero
32
Q

TCP es uno de los protocolos mas utilizados en topología “broadcast”

Seleccione una:
Verdadero
Falso

A
  • Falso
33
Q

Podemos utilizar los mecanismos de persistencia para…

Seleccione una o más de una:

a. Recuperar todos los mensajes perdidos en caso de caída y reconexión de un receptor
b. Asegurar que el mensaje está seguro mediante el uso de ACKs de confirmación contra los nodos de persistencia
c. Desacoplar a los subscriptores lentos y que reciban de los nodos de persistencia
d. Permitir a los subscriptores recuperar mensajes antiguos incluso si el emisor está parado

A

a. Recuperar todos los mensajes perdidos en caso de caída y reconexión de un receptor
b. Asegurar que el mensaje está seguro mediante el uso de ACKs de confirmación contra los nodos de persistencia
c. Desacoplar a los subscriptores lentos y que reciban de los nodos de persistencia
d. Permitir a los subscriptores recuperar mensajes antiguos incluso si el emisor está parado

34
Q

¿Para cuales de los siguientes casos de uso tiene sentido utilizar late join?

Seleccione una o más de una:

a. Subscripción a órdenes de mercado
b. Subscripción a precios de mercado
c. Subscripción a cambios de estado

A

b. Subscripción a precios de mercado
c. Subscripción a cambios de estado
(Explicación: Si el estado cambia poco, me puede interesar usar late join para obtener el último cambio de estado cuando me subscribo)

35
Q

En topología basada en concentrador, este último es siempre un punto único de fallo

Seleccione una:
Verdadero
Falso

A
  • Falso
36
Q

Las soluciones de mensajería de baja latencia basadas en Hardware siempre son mejores que las basadas en Software

Seleccione una:
Verdadero
Falso

A
  • Falso
37
Q

¿Cuales de las siguientes son características de la solución de mensajería Ultra Messaging?

Seleccione una o más de una:

a. No tiene soporte para Reliable Multicast o IPC
b. Está basado en topics y mapea automáticamente los topics y los transportes utilizando la configuración
c. No tiene soporte nativo para persistencia
d. Soporta funcionalidades adiciones como balanceo, late join, filtrado, o alta disponibilidad
e. Utiliza librerías nativas para mejorar el rendimiento
f. Está basado en software y no utiliza concentradores
g. Se basa en mecanismos de auto-discovery para poner en contacto emisores y receptores
h. Utiliza siempre “batching” automático, escogiendo la forma de envío según la carga del sistema

A

b. Está basado en topics y mapea automáticamente los topics y los transportes utilizando la configuración
d. Soporta funcionalidades adiciones como balanceo, late join, filtrado, o alta disponibilidad
e. Utiliza librerías nativas para mejorar el rendimiento
f. Está basado en software y no utiliza concentradores
g. Se basa en mecanismos de auto-discovery para poner en contacto emisores y receptores

38
Q

Siempre enviamos órdenes a mercado utilizando punto a punto UDP ya que nos asegura la mejor latencia

Seleccione una:
Verdadero
Falso

A
  • Falso
39
Q

Debemos utilizar Gateways para conectar redes de baja latencia en geografías distintas

Seleccione una:
Verdadero
Falso

A
  • Verdadero
40
Q

Se suele utilizar la topología en anillo en mensajería de baja latencia debido ya que reduce en gran medida la sobrecarga en las comunicaciones.

Seleccione una:
Verdadero
Falso

A
  • Falso
41
Q

Selecciona cuales de las siguientes respuestas son ventajas de la topología punto a punto en mensajería
Seleccione una o más de una:
a. Son mas fáciles de monitorizar que otras topologías como las basadas en concentrador
b. Se evita recibir mensajes en los que no se está interesado
c. Se incrementa el throughput al no haber procesos intermedios
d. Se reducen los saltos de red, disminuyendo por tanto la latencia

A

b. Se evita recibir mensajes en los que no se está interesado
d. Se reducen los saltos de red, disminuyendo por tanto la latencia

42
Q

Clasificación de topologías para sistemas de mensajería de baja latencia.

A
  • Punto a punto.
  • Con concentrador.
  • Broadcast.
  • Mixtas.
43
Q

Características topología punto a punto.

A
  • Muy buena en baja latencia.
  • No hay saltos de red adicionales ni intermediarios.
  • Cada mensaje se envía únicamente a su destinatario.
44
Q

Problemas topología punto a punto.

A
  • Cada aplicación necesita saber dónde se encuentran el resto de aplicaciones (manejo de muchas aplicaciones es muy complejo).
  • Mismo mensaje a múltiples aplicaciones requiere múltiples conexiones y duplicaciones del mensaje.
  • La monitorización es compleja.
45
Q

Características topología con concentrador.

A
  • Todos los mensajes pasan por uno o varios concentradores.
  • Monitorización y control del tráfico centralizado.
  • Es sencillo añadir o eliminar nodos dinámicamente.
  • Es sencillo implementar sistemas de balanceo o alta
    disponibilidad.
  • Compatible con utilizar casi cualquier protocolo de comunicación.
46
Q

Problemas con topología con concentrador.

A

• Incrementamos la latencia al tener un intermediario y un
salto mas de red.
• El concentrador se convierte en cuello de botella.
• Distribuir el mismo mensaje a mas de un receptor sigue
implicando múltiples envíos.

47
Q

Características topología broadcast.

A
  • Los mensajes se envían en “broadcast” y llegan a cualquiera que esté escuchando.
  • El protocolo más usado en esta topología es multicast.
  • Solo hay que enviar una vez el mensaje aunque haya varios destinatarios.
  • Se puede dividir el espacio lógico en distintos grupos multicast.
48
Q

Problemas topología broadcast.

A
  • Muy difícil de monitorizar.
  • Muy difíciles de securizar.
  • Los clientes de un grupo reciben todos los mensajes que se envíen a ese grupo.
49
Q

¿Qué es un topic?

A
  • Los topics se usan en topología broadcast para que a los clientes les llegue únicamente información concreta (división de los mensajes por temática).
  • Son una partición lógica del espacio de comunicación.
  • La relación entre el topic y su transporte físico viene dado por una librería.
50
Q

Ejemplos de topics.

A
  • Precio de acción (BBVA, Santander, …)

- Cambio de divisa

51
Q

¿Qué es el auto discovery?

A

Es un mecanismo de descubrimiento: las aplicaciones intercambian información con sus topics y sus transportes físicos y se autoconfiguran en caliente.

52
Q

Tipos de auto-discovery.

A
  • Demonio centralizado: los nodos saben dónde está el demonio de auto-discovery. El demonio se encarga de distribuir la información entre todos los nodos.
  • Autodiscovery con broadcast: no hay intermediarios ni cuellos de botella.
53
Q

¿Qué es la garantía de entrega?

A
  • Sirve para estar seguros de que los mensajes han llegado a su destino.
  • Se usan ACKs de confirmación.
  • Se permiten enviar X mensajes sin confirmación.
54
Q

ACKs explícitos.

A
  • Se usan cuando la garantía de entrega no es suficiente: el cliente debe de enviar de forma explícita el ACK cuando ha terminado de procesar.
55
Q

¿Qué es el late join?

A
  • Sirve para recibir los últimos mensajes enviados por el canal de comunicación cuando se conecta al canal por primera vez (el receptor debe encargarse de procesar los mensajes en orden).
  • Se suelen usar para obtener precios en tiempo real.
56
Q

¿Qué es la persistencia?

A

Consiste en almacenar los mensajes en nodos especializados (en vez de usar el buffer de salida).
- También es útil para desacoplar el envío de la recepción.

57
Q

¿Qué es el load balance?

A
  • Consiste en balancear la carga, enviando parte de los mensajes a diferentes receptores.
  • Si se usa un agente intermedio se denomina cola.
58
Q

¿Qué son los grupos de balanceo?

A
  • Son agrupaciones de receptores. Se usan para que cada mensajes le llegue a uno de los receptores dentro de cada grupo. El receptor se encarga de pasar la información recibida al resto de receptores del grupo.
59
Q

¿Qué son las colas?

A
  • Se usan para balancear la carga.
  • Funcionan con un mecanismo de gestión centralizado (nodo principal que se encarga de almacenar los mensajes y de distribuirlos entre los receptores).
60
Q

¿En qué consiste la alta disponibilidad?

A
  • Consiste en usar redundancia para evitar tiempos de pérdida de servicio.
  • Mecanismos activo-activo o activo-pasivo. (las colas son activo-pasivo, el balanceo de carga es un mecanismo activo-activo.
61
Q

¿Qué son los gateways?

A
  • Los sistemas de baja latencia están pensados para redes locales, para conectar sistemas en localizaciones distintas necesitamos concentradores llamados gateways (routers) conectados mediante WAN.
62
Q

Diferencias entre routers y gateways.

A
  • En el caso de ruta circular los gateways entran en bucle infinito, los routers buscan la ruta óptima.
  • Si hay dos gateways entre cada par de localizaciones, los mensajes se duplicarán (hay que gestionar los duplicados). Con routers solo uno formará parte de la ruta óptima y por tanto no habrá duplicados.