0% encontró este documento útil (0 votos)
20 vistas2 páginas

Netflx

Cargado por

Manuel
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
20 vistas2 páginas

Netflx

Cargado por

Manuel
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Este diagrama muestra la arquitectura de procesamiento de datos y microservicios

utilizada por Netflix para manejar el flujo de datos y solicitudes desde los usuarios hasta
el backend, y viceversa. Aquí te lo explico en detalle:

1. Dispositivos de usuario:

• Los usuarios acceden al contenido de Netflix a través de diferentes dispositivos


como teléfonos móviles, laptops, consolas de videojuegos, etc.

• Estas solicitudes pasan a través de un Load Balancer (representado como "ELB"


en el diagrama), que distribuye el tráfico de manera equilibrada entre varios
servidores para manejar eficientemente las solicitudes entrantes.

2. Open Connect:

• Es una plataforma de entrega de contenido que Netflix utiliza para distribuir su


contenido de manera eficiente. Esta plataforma está conectada al Load Balancer,
que gestiona la distribución del contenido directamente a los usuarios finales.

3. Netty Server:

• Este componente maneja las solicitudes de los usuarios después de que han
pasado por el Load Balancer.

• Aquí se aplican diferentes filtros, tanto de entrada (inbound filter) como de salida
(outbound filter), a las solicitudes.

4. Zulu:

• Zulu es un enrutador de solicitudes que actúa como un gateway para las


aplicaciones microservicios de Netflix. Se encarga de la gestión de las solicitudes
HTTP, controlando el tráfico hacia los microservicios.

5. Microservicios:
• Netflix utiliza una arquitectura basada en microservicios, donde cada
componente es un servicio independiente que se comunica con otros a través de
interfaces bien definidas.

• Critical Micro Services: Son servicios críticos que manejan funciones esenciales
de la aplicación.

• Service Client: Es un cliente que interactúa con los microservicios, usando


mecanismos de resiliencia como Hystrix (un library que permite la tolerancia a
fallos en sistemas distribuidos).

• EV Cache y Cassandra: Estos componentes son sistemas de almacenamiento y


caché que manejan los datos requeridos por los microservicios.

• MySQL Billing Info: Los datos de facturación de los usuarios se almacenan en


una base de datos MySQL.

6. Chaos Monkey y TITUS:

• Chaos Monkey: Es una herramienta que Netflix usa para probar la resiliencia de
su infraestructura, simulando fallos aleatorios.

• TITUS: Es la plataforma de contenedores de Netflix, que gestiona la ejecución de


aplicaciones en un entorno de nube.

7. Procesamiento de Video:

• El diagrama también muestra el flujo para la validación y transcodificación de


nuevos videos. Este flujo incluye un Transcoder que trabaja con colas de trabajo
asíncronas para procesar videos en paralelo.

• El contenido transcodificado se almacena en Amazon S3 (un servicio de


almacenamiento en la nube).

8. Procesamiento de Eventos y Monitoreo:

• Los datos de eventos generados por el sistema son manejados por Kafka, un
sistema de mensajería distribuido, y se enrutan a través de Apache Samza para
ser procesados.

• CHUKWA es otro componente que maneja la recopilación y agregación de datos


para análisis.

• Los datos procesados pueden ser almacenados en ElasticSearch para


búsquedas rápidas o en Spark para análisis de datos más profundos.

• Amazon EMR (Elastic MapReduce) también se usa como una plataforma de


análisis basada en Hadoop, que procesa grandes cantidades de datos.

En resumen, este diagrama describe la infraestructura robusta y escalable de Netflix, que


maneja tanto la entrega de contenido a los usuarios como el procesamiento de grandes
volúmenes de datos en un entorno distribuido basado en microservicios.

También podría gustarte