Skip to main content
Featured Video Play Icon

Opinión de Expertos: ¿Cómo reducir el Time2Market con Microservicios?

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (Ninguna valoración todavía)
Cargando…

Ismael Sánchez, Jefe de Arquitectura para el Sector Salud, nos cuenta como los microservicios pueden reducir el time to market de tus productos

¿Qué son los microservicios?

La arquitectura de microservicios se podría resumir como un conjunto de pequeños servicios que corren un único proceso cada uno de ellos y que sirven a una única función. Dada su baja complejidad, es fácil evolucionarlos, refactorizarlos, probarlos y si además tenemos en cuenta que la integración debe ser ágil se convierten en muy eficientes.

¿Cómo mejoran la eficiencia y el desarrollo?

Bueno, la palabra clave aquí es desacoplamiento, esto permite que como los equipos trabajan de manera hilada, reducir las fricciones del desarrollo, que suelen ser muy complejas. Además, esto les permite analizar, desarrollar y probar por separado, aumentando mucho el rendimiento de cada equipo. La gestión también podría ser un punto a favor de esta arquitectura ya que cuando hablamos de arquitecturas monolíticas, si esas arquitecturas monolíticas están construidas por equipos muy grandes, se suele convertir en una tarea ardua y muy compleja y si somos capaces de separar las responsabilidades en pequeños equipos, esa gestión se agiliza. Por supuesto también, no es obligatorio que todos los programadores tengan un conocimiento exhaustivo de la aplicación, solo necesitan conocer la parte en la que están trabajando. También se nos olvida una parte muy importante y es que cuando se comienza un proyecto de cero hay que elegir la tecnología que más se adecúa a ese proyecto y eso va cambiando con el tiempo pero el problema de las aplicaciones monolíticas es que esa tecnología suele ser un contrato de por vida. La gran ventaja que tienen las arquitecturas de microservicios es que cada microservicio podría estar construido en una tecnología diferente, incluso estar guardados sus datos en repositorios diferentes.

¿Entonces solo beneficia al desarrollo?

Ni mucho menos, una organización se ve fuertemente reforzada con esta arquitectura, por ejemplo, cuando llegan desarrolladores nuevos o desarrolladores que se tienen que mover entre equipos, la curva de aprendizaje es muy baja, ya que como tienes aislada la parte de microservicios, no es importante conocer toda la aplicación.

También tenemos que tener en cuenta los despliegues, un despliegue de una aplicación monolítica es algo complejo. Suele requerir una parada del servicio y se suele hacer en horario de baja latencia de usuario, esto suele ser en horarios nocturnos o suele ser en fines de semana. Sin embargo, cuando trabajamos con arquitectura de microservicios, podemos despegar en cualquier momento, incluso haciendo que un usuario no se entere de un cambio. Por ejemplo, Amazon en su landing page tiene hasta 150 microservicios trabajando en ella y hace despliegues continuos durante todo el día. También es muy importante remarcar la escalabilidad; las aplicaciones monolíticas solo escalan de manera vertical y esto implica un coste muy elevado, sobre todo cuando ya estamos hablando de aplicaciones muy grandes. La gran ventaja que tienen los microservicios es que escalan de manera horizontal, esto es el punto más importante de la escalabilidad ya que es capaz de escalar de manera casi infinita y a un coste más bajo que la escala vertical. La resilencia es también uno de los puntos más importantes. La resilencia es la capacidad que tiene un sistema para recuperarse de sus fallos. Netflix y Twitter sufrieron un ataque informático a finales del 2016, provocando que muchos de sus servidores cayeran y sin embargo fueron capaces de seguir dando servicio a sus clientes. Por ejemplo, Twitter era capaz de mostrarte los tweets pero lo único que no se veían eran los avatares de los usuarios. Esto es muy importante de cara a dar un servicio a un cliente.  

Por último ¿Cuál es el futuro de esta arquitectura?

Teniendo en cuenta que la base de usuarios crece exponencialmente, que cada vez tenemos más dispositivos conectados a Internet, la transformación digital, que las empresas cada vez quieren tener una mayor escalabilidad, pues parece ser que los sistemas distribuidos es la mejor opción en este caso y probablemente utilizar microservicios sea la mejor opción en este sentido. Por supuesto, el futuro de los microservicios no se queda ahí, hay tecnologías como Serveless, en el que nos olvidamos completamente de la infraestructura para trabajar a nivel de función y que crecen de manera también casi infinita y por supuesto toda la plataforma Cloud que nos ofrecen unas herramientas para manejar la complejidad que tiene la operativa sobre los microservicios de una manera más ágil.

 

Gfi España

Gfi España

Gfi es una empresa de Consultoría y Servicios Informáticos con más de 2.800 profesionales en España y 19.000 a nivel Internacional.

Gfi España ha escrito 73 entradas


Gfi España

Gfi España

Gfi es una empresa de Consultoría y Servicios Informáticos con más de 2.800 profesionales en España y 19.000 a nivel Internacional.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.