Un universo de Procesos.
Todo el mundo conoce Netflix, una de las grandes marcas audiovisuales mundiales. Lo que
quizá no es tan sabido es que la empresa inició sus actividades en 1998 como un servicio de
alquiler de DVD por Internet. A través del ordenador, el público norteamericano podía reservar
una película, alquilarla y recibirla en casa por correo. Cuando optaron por un innovador
modelo de suscripción mensual, no tardaron en alcanzar un gran éxito en todo Estados Unidos,
que puso contra las cuerdas a su todopoderoso rival Blockbuster.
Lo curioso es que, a pesar de su éxito, Netflix introdujo en 2007 una importante novedad: al
alquiler de películas en formato físico añadió el servicio de visionado de contenidos en
streaming. Paralelamente, la empresa avanzó en dos aspectos más: se internacionalizó, y se
convirtió, además de en distribuidora, en productora de contenidos. 2013 fue el año en el que
se estrenó el primer Netflix Original, la famosa serie House of Cards. Desde aquel lejano año,
Netflix ha incorporado una increíble cantidad de producciones originales, convirtiéndose
muchas de ellas en los pilares del éxito comercial de la empresa.
Cómo funciona el Sistema de Producción de Netflix.
El funcionamiento de Netflix implica una vasta lista de operaciones y procesos mancomunados
dignos de analizar. El servicio de Netflix transmite alrededor de 250 millones de horas de video
por día a alrededor de 98 millones de suscriptores de pago en 190 países. A esta escala,
proporcionar entretenimiento de calidad en unos pocos segundos a todos los usuarios no es
una broma. Y por mucho que signifique construir una infraestructura de primer nivel a una
escala que ningún otro servicio de Internet ha hecho antes, también significa que muchos de
los participantes en la experiencia deben ser negociados y mantenerse satisfechos, desde las
empresas de producción que suministran el contenido hasta proveedores de Internet que se
ocupan del tráfico de red que Netflix les genera.
Así es, en resumen y en términos muy sencillos, cómo funciona Netflix.
Administración de la Producción | FCE | UBA Curso Profesor Lic. Hernán Serrano
Cientos de microservicios, un universo de procesos.
Intentemos entender cómo está estructurado Netflix en el aspecto tecnológico con un ejemplo
sencillo.
Supongamos que la aplicación Mapas de su teléfono rastrea su ubicación todo el tiempo y
guarda información compleja sobre todos los lugares a los que va en un archivo,
ubicaciones.txt. Y termina creando una aplicación llamada LocoList, que, siempre que haya una
aplicación de Mapas en su teléfono, busca este archivo location.txt y muestra todos los lugares
registrados en ese archivo en una lista simple. Funciona a la perfección.
Ahora, vamos a decir que los desarrolladores de la aplicación Mapas dan cuenta que es una
mejor idea para almacenar toda la información de su ubicación en otro lugar que en el
locations.txt archivo y actualiza la aplicación para que ya no crea o tiendas de ese archivo en su
teléfono. Y ahora, parece que LocoList no puede encontrar ese archivo locations.txt del que
dependía para todos sus datos, y tampoco hay otra forma de extraer esa información de la
aplicación Mapas. LocoList ya no funciona ahora. Se complicó el proceso.
Todo el trabajo en LocoList se ha ido a la basura porque se realizó un cambio en Maps que
rompió su aplicación. Y si bien puede que no parezca gran cosa aquí, en un servicio enorme
como Netflix, toda la aplicación que se cae porque se realizó un cambio en una parte no solo
puede arruinar la experiencia de los usuarios, sino que también significa que todas las demás
partes de la aplicación debe reescribirse para adaptarse a ese pequeño cambio que realizó en
una parte de la aplicación. Tal estructura es lo que llamamos arquitectura monolítica.
Netflix literalmente marcó el comienzo de una revolución hace unos diez años al reescribir las
aplicaciones que ejecutan todo el servicio para que encajen en una arquitectura de
microservicios, lo que significa que cada aplicación o código y recursos de microservicio son
propios. No lo compartirá con ninguna otra aplicación por naturaleza. Y cuando dos
aplicaciones necesitan comunicarse entre sí, utilizan una interfaz de programación de
aplicaciones (API), un conjunto de reglas estrictamente controladas que ambos programas
pueden manejar. Los desarrolladores ahora pueden realizar muchos cambios, pequeños o
grandes, en cada aplicación siempre que se aseguren de que funciona bien con la API. Y dado
que un programa conoce correctamente la API del otro, ningún cambio interrumpirá el
intercambio de información.
Netflix estima que utiliza alrededor de 700 microservicios para controlar cada una de las
muchas partes de lo que conforma el servicio completo de Netflix: un microservicio almacena
todos los programas que viste, uno deduce la tarifa mensual de tu tarjeta de crédito, uno
proporciona a tu dispositivo la información correcta de los archivos de video que puede
reproducir, uno echa un vistazo a su historial de reproducciones y usa algoritmos para adivinar
una lista de películas que le gustarán, y le proporcionará los nombres y las imágenes de estas
películas para que se muestren en una lista en el menú principal . Y esa es la punta del iceberg.
Los ingenieros de Netflix pueden realizar cambios en cualquier parte de la aplicación y pueden
introducir nuevos cambios rápidamente mientras se aseguran de que nada más en todo el
servicio se averíe. De allí que se interprete como un universo de procesos.
2
Administración de la Producción | FCE | UBA Curso Profesor Lic. Hernán Serrano
Sin embargo, ¿dónde ejecutan todos estos microservicios?
Para ejecutar todo esto, se necesita tener una red masiva de servidores informáticos, que
Netflix alguna vez tuvo por su cuenta, pero se dieron cuenta de que el ritmo vertiginoso al que
crecieron, y necesitaban continuar haciéndolo, era difícil si dedicaban su tiempo a construir
sistemas informáticos que puedan soportar su software y seguir corrigiéndolos y
modificándolos para satisfacer sus necesidades.
Tomaron la valiente decisión de deshacerse del mantenimiento de sus propios servidores y
trasladar todas sus cosas a la nube, es decir, ejecutar todo en los servidores de otra empresa
que se ocupaba del mantenimiento del hardware mientras los ingenieros de Netflix escribían
cientos de programas y los implementaban en los servidores rápidamente. La otra empresa
que eligieron para su infraestructura basada en la nube es Amazon Web Services (AWS).
¿Cómo puede Netflix confiarle todo lo que tiene a una empresa archirrival y competidora
acérrima?
Bueno, muchas empresas siguen una especie de acuerdo tácito en el que trabajan para los
demás a pesar de competir en las mismas categorías; un buen ejemplo es cómo Samsung
compite con Apple en teléfonos y, al mismo tiempo, las partes principales del iPhone son todas
fabricadas por el Gigante coreano. Netflix era cliente de AWS antes de que apareciera Prime
Video, pero esto no significa que serán hostiles entre sí.
Resulta que la asociación de Netflix y Amazon resultó ser un gran beneficio mutuo para ambas
empresas. Netflix resultó ser uno de los clientes más avanzados de AWS, impulsando todas sus
capacidades al máximo e innovando constantemente sobre cómo pueden usar los diferentes
servidores que AWS proporcionó para varios propósitos: ejecutar microservicios, almacenar
películas y manejar el tráfico de Internet para su propio apalancamiento. AWS, a su vez,
mejoró sus sistemas para permitir que Netflix soportara cargas masivas en sus servidores, así
como hacer más flexible el uso de diferentes productos de AWS, y utilizó la experiencia
adquirida para satisfacer las necesidades de miles de otros clientes corporativos. AWS se
enorgullece de promocionar a Netflix como su principal cliente, y Netflix puede mejorar
rápidamente sus servicios y, sin embargo, mantenerlo estable gracias a AWS. Incluso si Netflix
le quita la popularidad a Prime Video.
De la bobina a la pantalla: un proceso repleto de subprocesos
Para Netflix, ofrecer una película o una serie es un proceso largo y arduo. Analicémoslo.
Proceso uno:
Si se trata de una serie o película que Netflix no produce por sí mismo (es decir, no es un
original de Netflix), tienen que negociar los derechos de transmisión con las empresas
encargadas de distribuir películas o programas de televisión. Esto significa pagar una gran
suma de dinero para obtener el derecho legal de transmitir una película o programa de
televisión a clientes en varias regiones del mundo. Y, a menudo, puede ser que la empresa de
distribución (o incluso la propia Netflix) haya firmado acuerdos exclusivos con otros servicios
3
Administración de la Producción | FCE | UBA Curso Profesor Lic. Hernán Serrano
de video o canales de televisión para algunas regiones, lo que significa que Netflix podría no
ofrecer algunos programas a los clientes allí, o en una fecha más adelante: por ejemplo, esto
llevó a que el estreno de la temporada 5 de House of Cards en Medio Oriente se retrasara un
mes completo después de su lanzamiento en comparación con los más de 150 países donde ya
estaba disponible para verse.
Proceso dos:
Netflix almacena la copia digital original del programa o la película en sus servidores de AWS.
Las copias originales suelen estar en estándares de cine de alta calidad, y tendrá que
procesarlas antes de que nadie pueda verlas.
Proceso tres:
Netflix funciona en miles de dispositivos y cada uno de ellos reproduce un formato diferente
de archivos de video y sonido. Otro conjunto de servidores de AWS toma este archivo de
película original y lo convierte en cientos de archivos, cada uno destinado a reproducir todo el
programa o la película en un tipo de dispositivo en particular y en un tamaño de pantalla o
calidad de video en particular. Un archivo funcionará exclusivamente en el iPad, otro en un
teléfono Android Full HD, uno en un televisor Sony que puede reproducir video 4K y sonido
Dolby, uno en una computadora con Windows, etc. Se pueden crear incluso más de estos
archivos con diferentes calidades de video para que sean más fáciles de cargar en una
conexión de red deficiente. Este es un proceso conocido como transcodificación. También se
agrega una pieza especial de código a estos archivos para bloquearlos con lo que se llama
administración de derechos digitales o DRM -una medida tecnológica que previene la piratería
de películas.
La aplicación o el sitio web de Netflix determina qué dispositivo en particular está usando para
mirar y busca el archivo exacto para ese programa destinado a reproducirse especialmente en
su dispositivo en particular, con una calidad de video particular basada en la velocidad de
Internet en ese momento.
Proceso cinco:
La última parte sobre la búsqueda es la más crucial para Netflix, porque después de todo, ahí
es donde la red de Internet entrega el video desde los servidores AWS de Netflix al dispositivo
del cliente. Es decir donde el sistema de producción ofrece su salida al exterior. Si está mal
administrado o ignorado, significa un Netflix realmente lento o inutilizable y prácticamente el
final para la empresa. Internet es el cordón umbilical que conecta a Netflix con sus clientes, y
les cuesta mucho entregar el contenido que un usuario desea, en el menor tiempo posible. En
una red muy concurrida donde millones de servicios compiten por el espacio.
4
Administración de la Producción | FCE | UBA Curso Profesor Lic. Hernán Serrano
Compitiendo por el tiempo donde se desarrollan el universo de
procesos
Toda la gama de operaciones que construyen el ecosistema (o sistema de producción) de
Netflix (software, contenido y tecnología) se vuelve inútil si la conexión a Internet del usuario
final es demasiado pobre para manejar la calidad del video. Así es como funciona básicamente
todo en Internet: cuando hace algo que requiere acceso a la red, se envía una solicitud a su
proveedor de servicios de Internet (ISP). El ISP lo reenvía a los servidores dedicados que
manejan el sitio web y los servidores brindan una respuesta que se retransmite a la
computadora y forma el resultado. Para Netflix y otros sitios de primer nivel, donde millones
de horas de contenido de video se transmiten a través de Internet entre sus servidores y todos
los usuarios, se necesita una red de servidores mucho más grande para mantener el
rendimiento. Lo hacen construyendo algo llamado Content Delivery Network (CDN).
Lo que hacen básicamente las CDN es tomar el sitio web original y el contenido multimedia
que contiene, y copiarlo en cientos de servidores repartidos por todo el mundo. Entonces,
cuando, digamos, inicie sesión desde Budapest, en lugar de conectarse al servidor principal de
Netflix en los Estados Unidos, cargará una copia ídem desde un servidor CDN que sea el más
cercano a Budapest. Esto reduce en gran medida la latencia, el tiempo que transcurre entre
una solicitud y una respuesta, y todo se carga realmente rápido. Las CDN son la razón por la
que los sitios web con una gran cantidad de usuarios como Google, Facebook o YouTube
logran cargarse realmente rápido, independientemente de dónde se encuentre o de la
velocidad de Internet.
Netflix utilizó anteriormente una variedad de redes CDN, operadas por gigantes como Akamai,
Level 3 y Limelight Networks para entregar su contenido. Pero una base de usuarios en
crecimiento significa que deben entregar una mayor cantidad de contenido en más
ubicaciones al tiempo que reducen los costos, y esto los llevó a construir su propia CDN,
llamada Open Connect .
Aquí, en lugar de depender de los servidores de AWS, instalan los suyos propios en todo el
mundo. Pero solo tiene un propósito: almacenar contenido de manera inteligente y entregarlo
a los usuarios. Netflix llega a acuerdos con los proveedores de servicios de Internet y les
proporciona el llamado dispositivo rojo (que es una especie de disco duro) sin costo alguno.
Los proveedores de internet los instalan junto con sus servidores. Estos “dispositivos rojos” de
Open Connect descargan la biblioteca de Netflix para su región desde los servidores principales
en los EE. UU. Si hay varios de ellos, cada uno almacenará contenido que sea más popular
entre los usuarios de Netflix en una región para priorizar la velocidad. Por lo tanto, una película
que se ve con poca frecuencia puede tardar en cargar más que Stranger Things. Ahora, cuando
se conecte a Netflix, el dispositivo rojo de Open Connect más cercano a usted entregará el
contenido que necesita, por lo que los videos se cargan más rápido que si su aplicación de
Netflix intentara cargarlos desde los servidores principales en los EE. UU.
Piense en los dispositivos rojos como discos duros de todo el mundo que almacenan videos, y
cuanto más cerca estén, más rápido podrá acceder a ellos y cargar el video. Hay muchos más
trucos detrás de escena: cada vez que se presiona reproducir en un programa, Netflix ubicará
5
Administración de la Producción | FCE | UBA Curso Profesor Lic. Hernán Serrano
las 10 cajas (dispositivos rojos) de Open Connect más cercanas que tienen el programa
cargado. Su aplicación o sitio de Netflix intentará detectar cuál de ellos es el más cercano o
funciona más rápido en su conexión a Internet, y luego cargará el video desde allí. Esta es la
razón por la que los videos comienzan borrosos pero luego se agudizan repentinamente, es
decir, Netflix cambia de servidor hasta que se conecta al que le brindará la mejor calidad de
video.
El secreto del éxito son los procesos.
Esto es lo que sucede cuando presionas el botón Reproducir en tu aplicación de Netflix:
Primero, cientos de microservicios, o pequeños programas independientes, trabajan juntos
para crear un gran servicio de Netflix.
Segundo, el contenido adquirido legalmente o con licencia se convierte a un tamaño que se
adapta a tu pantalla y está protegido contra la copia.
Tercero, los servidores de todo el mundo hacen una copia y la almacenan para que el más
cercano al cliente la entregue con la máxima calidad y velocidad.
Cuarto, cuando seleccionas un programa, tu aplicación de Netflix elige de cuál de estos
servidores cargará el video.
Quinto, no podes evitar una maratón de Breaking Bad hasta saber qué pasará con Walter
White, o te atrapa Peretti en el oscuro papel del pastor evangélico en El Reino, o te encandilas
con el futuro no tan disruptivo de Black Mirror, o conoces el misterioso mundo del ajedrez con
Gambito de Dama. De cualquier manera, el sistema de producción de Netflix lo hizo otra vez.
Todo funcionó a la perfección. Y le quitó tiempo a tu descanso1.
1
https://medium.com/refraction-tech-everything/how-netflix-works-the-hugely-simplified-complex-stuff-that-happens-every-
time-you-hit-play-3a40c9be254b