Aunque los microservicios pueden ofrecer muchos beneficios a las organizaciones que los utilizan, como cualquier nueva tecnología, vienen con sus propios desafíos únicos. Y, como en el caso de cualquier iniciativa tecnológica, es importante adelantarse a los desafíos de implementación antes de avanzar demasiado en el proceso.
A continuación presentamos un vistazo a los cuatro desafíos comunes, tanto técnicos como no técnicos, que podría enfrentar si se embarca en una implementación de microservicios, junto con sugerencias sobre cómo superarlos.
1. Cambio Cultural y Organizacional
La implementación de microservicios no ocurre de la noche a la mañana. No puede decidir introducir microservicios y esperar que todas sus formas antiguas de hacer las cosas se adapten por sí mismas. Un cambio a microservicios requiere un cambio cultural, de procesos y organizacional, porque es un cambio de mentalidad y de la forma en que las personas trabajan.

Las empresas tienden a organizarse para respaldar los procesos de desarrollo actualmente en vigencia, no los que se implementarán. Las nuevas tecnologías, como las arquitecturas de microservicios, imponen una nueva forma de desarrollar soluciones, por lo que la forma en que los equipos se organizaron anteriormente puede no ser compatible con el nuevo enfoque.
En el caso de los microservicios en particular, la vieja técnica de cascada y la organización de los equipos por función se van, reemplazados por equipos más pequeños que trabajan en microservicios.

El desafío con la reorganización también se convierte en: ¿Qué hacemos con nuestras aplicaciones existentes? Habrá algunos que aún necesitan soporte, por lo que es importante encontrar un punto medio, en el que la organización por un lado esté creando espacio para nuevas técnicas y al mismo tiempo, apoyando las existentes existentes.
La recomendación es mover las aplicaciones existentes a contenedores, para ayudar a acelerar el proceso de desarrollo y beneficiarse de la escalabilidad, DevOps, las mejoras de Agile y la portabilidad de La Nube. Esta configuración también puede facilitar un viaje más fluido hacia el desarrollo de aplicaciones nativas de La Nube sin dejar atrás sus aplicaciones existentes.
2. Administrar microservicios
Administrar microservicios puede ser un desafío importante, especialmente a medida que aumenta el número de éstos. Si acaba de comenzar con los microservicios y solo tiene un puñado de ellos, esto aún no es un problema en su organización.
Sin embargo, a medida que continúe desarrollando más microservicios, administrarlos puede volverse difícil de manejar. En este caso, la administración se considera la gestión de todo el ciclo de vida de los microservicios, incluida la forma en que se implementan, prueban, rastrean, versionan, implementan, mantienen y retiran.
No tener una comprensión firme de la administración de microservicios, puede generar problemas de duplicación de desarrollo, detectabilidad, usabilidad y reutilización, dependencia, solución de problemas y rastreabilidad.
Desarrollar herramientas de administración de microservicios por su cuenta, aunque es una opción válida, puede ser una propuesta compleja y engorrosa. En cambio, la sugerencia es buscar adquirir una plataforma cuyas capacidades incluyen la administración de microservicios.
Comience por evaluar varias plataformas y elija la que mejor se adapte a sus necesidades organizativas generales y requisitos específicos de microservicios. Si hay lagunas en la solución, lo que procede es participar en el desarrollo interno para llenar esos vacíos.
Una plataforma que incluye capacidades que administran el ciclo de vida de los microservicios puede ayudar a abordar cualquier problema que pueda surgir, al tener demasiados microservicios en "el ecosistema".
3. Diagnóstico y monitoreo de microservicios
Cuando se introduce un enfoque de microservicios, pueden ser necesarias nuevas formas de supervisión y solución de problemas para rastrear y resolver problemas imprevistos, tanto en la producción o durante el proceso de desarrollo.
Sin embargo, aunque esto es una necesidad cuando se trata de una estrategia adecuada de microservicios, los participantes en la encuesta de Red Hat, citaron el diagnóstico y la supervisión como uno de los principales desafíos con microservicios.
En una arquitectura de microservicios, las aplicaciones pueden estar compuestas de múltiples microservicios o invocarlos. Cuando surge un problema en la aplicación, encontrar la causa raíz puede ser un desafío si no tiene una plataforma o un medio para monitorear y rastrear la ruta que tomó una solicitud específica, por ejemplo: cuántos y qué microservicios se atravesaron para una solicitud específica proveniente de una interfaz de usuario.
Al igual que con la administración de microservicios, diseñar e implementar sus propios diagnósticos y herramientas de monitoreo para microservicios, puede ser una tarea desalentadora. En su lugar, busque adquirir una plataforma que pueda proporcionar capacidades integradas para el diagnóstico y la supervisión de microservicios, como el registro, las métricas, el seguimiento y la correlación de mensajes.
Evalúe soluciones para encontrar una que se ajuste a sus requisitos de diagnóstico y monitoreo y complete cualquier brecha en la solución internamente. Además, tener una plataforma específica respaldada por el soporte del proveedor e involucrar a un tercero para que haga el trabajo de configurar las herramientas de monitoreo, puede aliviar la carga de los equipos internos.
Las soluciones de microservicios están evolucionando y pueden agregar funcionalidad basada en tecnologías innovadoras de código abierto, por lo que puede ser una buena idea contar con la ayuda de un proveedor externo para mantenerse al día con los cambios.
4. Tiempo de implementación y recursos para microservicios
El tiempo de implementación y la búsqueda de los recursos adecuados para el desarrollo de microservicios es el último de los cuatro desafíos principales identificados por los participantes en la encuesta de Red Hat. Este desafío probablemente tiene más que ver con las personas que implementan microservicios que con la tecnología misma.
Los microservicios no imponen una tecnología o marco, de hecho, la definición de un microservicio es independiente de la tecnología. Al hacer microservicios, las organizaciones necesitan elegir las herramientas adecuadas para las tareas correctas y esto lleva a uno o varios lenguajes y/o marcos, con los cuales desarrollar microservicios.
Aprender nuevos tiempos de ejecución, marcos y tecnologías puede ser desafiante y requerir mucho tiempo. Otro desafío es encontrar profesionales de TI capaces de trabajar con microservicios. Debido a que muchos de los tiempos de ejecución son nuevos, el grupo de personas con talento en esas áreas puede ser pequeño.
Al decidir sobre idiomas y marcos para microservicios, considere cómo aprovechar el conocimiento de las personas que ya tiene. Determinar si hay una intersección entre la experiencia que sus desarrolladores ya tienen y los lenguajes y/o marcos que está evaluando, lo ayudará a determinar el nivel de inversión que puede necesitar dedicar para el reciclaje de sus desarrolladores.
Por otro lad, si elige una tecnología con la que sus desarrolladores ya están familiarizados, es probable que pueda aprovechar su experiencia en el desarrollo de microservicios sin tener que invertir en el reciclaje.
También debe investigar el mercado de trabajo para tener una idea del suministro de personas que tienen experiencia en los idiomas o marcos, que está pensando utilizar para microservicios. Si las personas calificadas son escasas, puede tener dificultades para llenar los trabajos a tasas razonables.
Además, si está adquiriendo una plataforma o solución de microservicios de un proveedor, puede usar los expertos técnicos del proveedor para capacitar a su propia gente, ayudarlo en su viaje transformador hacia los microservicios y el desarrollo de aplicaciones nativas de la nube.
La implementación de microservicios puede parecer una tarea desalentadora, pero si la divide en pasos, será mucho más manejable. Comenzar el proceso temprano, teniendo en cuenta la necesidad de volver a capacitar o realizar cambios en la organización, asegurar la ayuda de terceros para la administración y el diagnóstico y presupuestar el cambio, puede sumarse a la superación exitosa de los desafíos de la implementación de microservicios.
No hay comentarios:
Publicar un comentario
Todos los derechos reservados.
Copyright © 2025.