¿Qué son los microservicios?

La arquitectura de microservicios ha sido un tema candente desde mediados de la última década y aparentemente todo el mundo busca hacer el cambio. Pero, ¿ha estado a la altura de las expectativas? En este blog explicaremos la diferencia entre un servicio monolítico y los microservicios y cuál es mejor para cada negocio.

Uber: refactorización de miles de microservicios

Uber es un gran nombre que se aleja de los microservicios, con Gergely Orosoz , quien en ese momento era gerente de ingeniería de la compañía, compartiendo las noticias en Twitter:

Kelsey Hightower: “Los monolitos son el futuro”

Si no son microservicios, ¿entonces qué? Kelsey Hightower escribe en changelog.com:

Los monolitos son el futuro porque el problema que la gente está tratando de resolver con microservicios realmente no se alinea con la realidad… y he hecho esto antes, pasé de microservicios a monolitos y viceversa“.

Sam Newman: los microservicios deberían ser el último recurso

El consultor de nube Sam Newman tiene su propia opinión sobre los microservicios. En su presentación sobre Patrones de descomposición de monolitos en QCon London 2020, dijo que el monolito no es el enemigo y los microservicios no deberían ser una opción predeterminada. En su libro, Monolith to Microservices , Newman aconsejó a las personas que se centraran en el resultado, no en la tecnología, y que siempre recordaran que el objetivo es la implementación independiente.

¿Qué está pasando con los microservicios?

¿Por qué tantos proyectos se han vuelto inmanejables con microservicios, a pesar de su promesa de simplicidad y flexibilidad? ¿Son mejores los monolitos, después de todo?

Los microservicios siempre se han posicionado como una solución para bases de código monolíticas. Pero, ¿los monolitos son necesariamente un problema? Según la definición de Wikipedia, una aplicación monolítica es autónoma e independiente de otras aplicaciones informáticas. Un monolito puede ser beneficioso si la velocidad es más importante que la arquitectura perfecta, que suele ser el caso de las nuevas empresas que trabajan con fondos limitados que necesitan comenzar a vender para sobrevivir.

En última instancia, los microservicios podrían hacer la vida más fácil para esas nuevas empresas, pero conllevan costos iniciales que requieren madurez para soportar. Para ser claros, los microservicios no “arreglan” monolitos. El problema real que los microservicios deberían resolver es la incapacidad de cumplir los objetivos comerciales porque un sistema no puede soportar un crecimiento exponencial o la empresa no puede soportar costos de cambio impredecibles.

El costo incontrolable del cambio no es propiedad de un monolito sino de una gran bola de barro.

Gran bola de barro

Una gran bola de barro es una jungla de código espagueti desordenadamente estructurado, extenso, con cinta adhesiva y alambre para empacar. Estos sistemas muestran signos inconfundibles de crecimiento descontrolado y reparaciones oportunas y repetidas. La información se comparte de manera desmedida entre elementos distantes del sistema, a menudo hasta el punto en que casi toda la información importante se vuelve global o duplicada.

¿Por qué microservicios?

Una buena arquitectura de microservicios es elegantemente simple, pero no es fácil, rápida o accidental. En la actualidad, existen muchos ejemplos de microservicios excelentes, maduros y a gran escala, incluidos Twitter, Amazon, Spotify y LinkedIn, pero hay una razón por la que todos comenzaron como aplicaciones monolíticas y luego evolucionaron. Nunca permitas que la búsqueda de la perfección técnica se interponga en el camino del éxito empresarial. Una arquitectura pragmática significa que las opciones tecnológicas deben satisfacer las necesidades comerciales, no al revés.

Construimos sistemas, no conjuntos de servicios

En BMC, utilizamos una arquitectura basada en microservicios para optimizar el diseño de un sistema, no el diseño de servicios individuales. Los microservicios no pueden, y nunca estarán, completamente desacoplados ni completamente independientes. No se puede construir un sistema con componentes independientes.

Entonces, ¿cuál es la respuesta? ¿Microservicios, Miniservicios 0 Macroservicios? Hablaremos de eso en nuestra próxima entrega, mientras tanto te invitamos a conocer las soluciones de gestión de servicios que tenemos disponibles como BMC Helix Remedyforce es una herramienta de gestión de servicios de TI que se adapta fácilmente a las necesidades de las empresas medianas. Basado en la nube de Salesforce, le permite combinar perfectamente la gestión de operaciones de TI (ITOM) y las capacidades cognitivas para garantizar que el negocio sea eficiente, seguro y cumpla con las normas. Contacta a nuestros expertos y solicita una demostración personalizada para encontrar una solución que se adapte a las necesidades de su negocio.

Consulta la información original en inglés.

Cómo obtener visibilidad completa de la infraestructura de TI

En este blog analizaremos los problemas de las complejas estructuras de TI actuales y como obtener una visibilidad completa de ellas

CloudOps, qué es y cómo beneficia a los negocios

En este blog analizaremos CloudOps una nueva forma de gestión de cloud para ayudar a los expertos a lidiar con la complejidad actual.

Automatización de la detección de fraudes con BMC Helix Control-M

En este artículo analizaremos el problema del lavado de dinero y cómo las instituciones financieras pueden hacerle frente a este problema

Inteligencia artificial para empresas no tecnológicas

En este blog analizaremos un artículo de la revista Forbes donde diferentes empresas nos cuenta su experiencia al implementar RPA

¿Qué son los microservicios?

En el siguiente blog analizaremos qué son los microservicios y sus diferencias con los servicios monolitos y como lograr el éxito con ambos.

Conoce BMC Helix Intelligent Automation tecnología impulsada por IA y ML

En este blog hablaremos de BMC Helix Intelligent Automation una nueva herramienta para coordinar diferentes herramientas de BMC.

7 beneficios principales de la Gestión de Servicios de TI

En este blog exploraremos los principales beneficios de la gestión de servicios de TI y por qué es cada más importante para las empresas

Una breve introducción a Patch Management

En este artículo hablamos sobre la importancia de patch management además una guía para una gestión exitosa.

Mejora la experiencia del cliente con TI

En este artículo analizaremos cómo mejorar la estrategia de TI y la experiencia al cliente.

10 preguntas clave antes de implementar IA y ML

En este artículo analizaremos 10 preguntas que debes realizar antes de elegir una herramienta de IA y ML para el monitoreo de tu negocio