Background Image
EXPERIENCIA DEL USUARIO

Diseño de sistemas distribuidos

September 22, 2021 | 3 Minuto(s) de lectura

Casi todo lo que hacemos hoy en día con los ordenadores, desde los mensajes de texto y los chats de vídeo hasta la compra de la última criptomoneda de moda, como DOGE o SHIB, ocurre exclusivamente gracias a los ordenadores interconectados. En Improving creemos que "Nuestro éxito es el resultado de nuestra implicación colectiva", y es cierto, nuestra era moderna existe gracias asistemas distribuidos.

A pesar de ello, la mayoría de la gente tiene muy poca idea de cómo los grupos de ordenadores consiguen trabajar juntos. Este artículo va a tratar de explicar algunas de estas ideas básicas, y cómo son realmente similares a cómo se comunican los seres humanos (aunque los ordenadores son más rápidos).

Virtual Meeting

Cuando se trata de que los ordenadores hablen entre sí, el primer concepto y el más importante es determinar si el método de comunicación es síncrono o asíncrono. Cuando enseñamos a los ordenadores a comunicarse, empezamos con la comunicación síncrona. Les enseñamos a "descolgar el teléfono" y hablar con otro ordenador. Este es el modelo de comunicación que hay detrás de la World Wide Web, y funciona. Conocíamos el poder del teléfono, así que seguramente dejar que los ordenadores hablaran entre sí de esa manera sería mejor que cualquier otra cosa que se nos ocurriera, ¿verdad?

Open Mailbox

Sin embargo, la forma de comunicación más potente para los ordenadores no se basa en el teléfono, sino, sorprendentemente, en el servicio postal. El correo es asíncrono. Escribes un mensaje y lo envías, sin saber nunca si recibirás respuesta. Por supuesto esperas que la recibas, sobre todo si se trata de una factura a alguien que te debe dinero. En ese caso, puede que incluso esperar que recibas una respuesta.

La comunicación asíncrona es tan potente para los ordenadores por lo rápidos que son. Alguien puede responder a una llamada telefónica cada vez, pero no puede responder a 1.000.000 de llamadas a la vez. Con la comunicación asíncrona, puedes dejar que los mensajes se acumulen y volver a ellos más tarde. Si lo piensas bien, el buzón de voz no es más que una alternativa asíncrona al teléfono cuando el destinatario está demasiado ocupado para atender la llamada.

A partir de estas dos formas básicas de comunicación, la carta y la llamada telefónica, hemos conseguido crear vastos sistemas que permiten experiencias increíblemente sorprendentes. Veamos algunas tecnologías que utilizamos a diario y cómo funciona la información anterior para lograr sus objetivos:

Comercio de grandes ventas

Si sólo puedes vender 50 widgets y todo el mundo los quiere, más vale que tengas buenos sistemas para gestionar la demanda. Desde las ventas de Ticketmaster del próximo concierto de Usher hasta la venta de Hasbro de cartas de edición limitada de Magic: The Gathering, éste es un problema muy común.

Aunque pueda parecer un caso ideal de procesamiento síncrono, al final se trata de comunicación asíncrona. Cuando indicas que quieres añadir algo a tu cesta, estas plataformas no te responden con un "claro" inmediato. En su lugar, envían una solicitud para bloquear temporalmente el inventario para usted. A continuación, el usuario dispone de un pequeño margen de tiempo para realizar la compra antes de que el producto vuelva al inventario. Todo esto se gestiona mediante mensajería asíncrona.

Streaming multimedia

Entre Netflix, Spotify, Amazon Prime Video y otros, estos servicios son ahora la mayor parte del tráfico de red en la mayoría de las redes. Hace varios años, una popular conferencia tecnológica registró que sus asistentes habían descargado 11 terabytes de datos de Netflix en sólo los tres días que duró la conferencia.

Sorprendentemente, casi todos estos servicios entregan estos datos de forma sincrónica. Dado que cada consumidor se encuentra en un punto diferente del flujo de datos, la mejor forma de gestionarlo es como miles y miles de "llamadas telefónicas" individuales con los distintos consumidores. Es la única manera de garantizar una experiencia de máxima calidad a sus clientes. Ahora bien, internamente estos sistemas son enormemente asíncronos, pero esa última milla es síncrona.

People Pointing at Laptop

¿Por qué necesitamos saber esto? Porque las soluciones más sólidas que existen son modelos mixtos. No hay una respuesta correcta que se adapte a todas las situaciones. La comunicación síncrona proporciona una experiencia muy personalizada, pero lo hace a expensas del consumo informático y de red. La asíncrona gestiona muy bien los picos de demanda, a costa de una pequeña sobrecarga en cada comunicación.

Cuando trabaje con sus tecnólogos para discutir nuevos diseños de software, tenga en cuenta estas compensaciones. Discuta qué es lo más importante para usted y para su empresa. Ticketmaster nunca quiere vender el mismo asiento dos veces, porque eso se considera un fracaso para ellos. Por ello, el coste del sistema asíncrono que les evita ese problema merece la pena. Netflix nunca quiere que tu vídeo se detenga por almacenamiento en búfer, porque eso también es un fallo para ellos.

En los sistemas distribuidos, como en todas las cosas, debe haber equilibrio. Hable de sus objetivos empresariales con su equipo tecnológico. Confíe en que le escucharán y le propondrán un sistema que responda a la experiencia que desea que tengan sus usuarios. Póngase en contacto con nosotros si quieres saber más sobre estos sistemas o te gustaría crear un equipo tecnológico para tu organización.

Experiencia del usuario

Reflexiones más recientes

Explore las entradas de nuestro blog e inspírese con los líderes de opinión de todas nuestras empresas.
Tomorrow Technology Today Blog Thumbnail
IA/ML

Ingeniería de plataformas de IA escalables: Estrategias de sostenibilidad y reutilización

Cómo construir plataformas de IA escalables que garanticen la sostenibilidad, la colaboración y la eficiencia en su organización.