Newsletter para devsEntra
Web Reactiva

WR 78: Migrando de monolito a servicios en Airbnb

Tomamos prestada la presentación de Jessica Tai, ingeniera de Airbnb, en la que nos cuenta como migraron desde un monolito a un sistema basado en servicios.

Escúchalo también en Spotify | Apple Podcasts | Google Podcasts | iVoox

Tomamos prestada la presentación de Jessica Tai, ingeniera de Airbnb, en la que nos cuenta como migraron desde un monolito a un sistema basado en servicios.

La gente de esta startup comparte muchos secretos de su negocio y, sobre todo, de cómo llevan a cabo tareas complejas. Un caso poco parecido al que veremos el próximo viernes en Web Reactiva Premium. Un caso de estudio sobre una pequeña start up que no sabía muy bien por donde empezar.

Descubre nuevo contenido todas las semanas en la zona premium de danielprimo.io a un precio de lanzamiento inigualable: 5 euros al mes.

Muchas gracias a Alberto Corbi por recomendarnos. Mucho más importante que la tecnología son las personas :)

Apuntate a la Zona Premium

De monolito a servicios SOA

La presentación de Jessica da para mucho. :)

En el audio desgrano la información más importante, intentando dibujar con palabras todo aquellos que nos detalla mediante gráficos.

Para empezar nos va desgranando las dificultades que tenían en su trabajo en el punto en el que decidieron cambiar:

  • Despliegues lentos y “con miedo”.
  • Múltiples dependencias dentro del monolito.
  • Propagación de errores.
  • Falta de control del sistema.

Con millones de líneas de código y un producto que depende en una medida muy grande del software decidieron dar un paso y migrar a una arquitectura orientada a servicios (Service Oriented Architecture, SOA).

Principios para un buen sistema basado en servicios

Realmente parecen evitar la palabra “microservicios”, pero está latente durante toda la presentación.

Se tomaron en serio tener algunos principios que no podían saltarse:

  • Cada servicio debe escribir y leer sus propios datas.
  • Cada servicio tiene que tener una responsabilidad concreta.
  • Evitar duplicar funcionalidades.
  • Las mutaciones de la base de datos deben propagarse como un evento estándar.

Resultados finales

La conferencia es de mediados de 2018, pero muestra una tendencia clara a la profesionalización de todo el software relacionado con el core de negocio de Airbnb.

Con más de 1000 ingenieros tenían en ese punto 250 servicios diferentes con más de 1000 endpoints listos para ser usados. Lo mismo algo como Postman, para testear y probar API’s se les queda algo corto.

Han conseguido la impresionante cifra de de diez mil despliegues por semana. Esto quiere decir en la práctica que el tiempo que dedican a desplegar se ha convertido en algo minúsculo y que cortan de raíz todos los errores en las fases previas de desarrollo.

Eso si, todo esto es caro de mantener y requiere un esfuerzo en la orquestación de tantos sistemas. Pero mal no parece que les vaya :)

Enlaces de interés

En episodios anteriores de Web Reactiva:

Puedes seguir a Web Reactiva en el canal de telegram t.me/webreactiva o en la cuenta de twitter @webreactiva con referencias, recursos y enlaces de interés.

Espero que te haya gustado el episodio, nos escuchamos el próximo martes.

Escrito por:

Imagen de Daniel Primo

Daniel Primo

CEO en pantuflas de Web Reactiva. Programador y formador en tecnologías que cambian el mundo y a las personas. @delineas en twitter y canal @webreactiva en telegram

12 recursos para developers cada domingo en tu bandeja de entrada

Además de una skill práctica bien explicada, trucos para mejorar tu futuro profesional y una pizquita de humor útil para el resto de la semana. Gratis.