Microservicios

Somos microservicios

Complete el formulario para conocer el precio de esta solución.

Es una arquitectura para el desarrollo de aplicaciones que en esencia aplica el concepto de resolver partes del problema a través de elementos más pequeños (servicios) con responsabilidad bien definida para que luego su combinación cubra la necesidad inicial.

Con alcances bien acotados y protocolos poco complejos los microservicios ofrecen modularidad que hace que las aplicaciones sean más sencillas de construir, probar, desplegar y más importante aún cambiar y mantener.

Agilidad e innovación en las empresas

Con el incremento en uso de dispositivos móviles y la nube, la funcionalidad y los datos de los sistemas deben adaptarse y estar disponibles para la exigencia de un número creciente de clientes, y la arquitectura “monolítica” no lo hace sencillo, el cambio es inminente y obligatorio.

Las aplicaciones deben ser modificadas para las nuevas demandas lo que abre la posibilidad de nuevos errores cada vez que se intente ampliar sus funciones o realizar ajustes de contexto.

Por lo anterior es importante que las empresas conozcan de la importancia y beneficios de los Microservicios para modernizar sus arquitecturas monolíticas y obtener todas las ventajas de este enfoque de arquitectura de aplicaciones.

Características de los Microservicios
  • Servicios pequeños e independientes y acoplados de forma flexible
  • Cada servicio es un código base independiente lo cual facilita el aislamiento de errores
  • Pueden implementarse y escalar de manera independiente
  • Equipos de desarrollo más pequeños y enfocados
  • Conservan sus propios datos o estado externo
  • Comunican entre sí mediante APIs bien definidas
  • Cada microservicio puede utilizar un lenguaje o tecnología diferente
Beneficios de los Microservicios
  • Incremento de resiliencia: función descentralizada, un fallo no afecta todo el sistema
  • Mejora la escalabilidad: funciones por separado, se puede escalar en segmentos puntuales
  • Habilidad de usar “herramienta correcta para la tarea concreta”: no atada a un vendedor, plataforma e inclusive tecnología especifica
  • Respuesta más rápida a la demanda del mercado: no es necesario reescribir y probar todo el código para incluir cambios o nuevas funciones
  • Mantenimiento más sencillo: por su alcance y con el soporte de cultura DevOps la posibilidad de aplicaciones más robustas se incrementa
  • Mejora el ROI sobre el TCO (Total Cost of Ownership): optimiza recursos, minimiza dependencias y habilita agilidad
  • Entrega continua: desarrollo, operaciones y calidad con un trabajo orquestado y enfocado dan como resultado operaciones más eficientes
¿Se puede convertir todo a Microservicios?
  • No se puede refactorizar todos los sistemas a microservicios
    • La mayoría de las aplicaciones tienen una política de “si no se rompe, no lo arregles”
    • Puede ser poco realista rediseñar los sistemas antiguos
  • Qué pasa si no puedes cambiar el almacenamiento de datos?
    • Se harían microservicios si los datos permanecen en un silo?
    • Se puede gestionar sin transaccionalidad a la base de datos?
  • Cómo encajan los sistemas existentes en una arquitectura de microservicios?
    • Cómo aislar sus problemas de disponibilidad de los sistemas existentes?
    • Qué pasa si no escalan tan bien como los nuevos microservicios?
Microservicios y DevOps

La modularidad de microservicios habilita la integración continua lo cual es objetivo de DevOps. El uso combinado de ambos enfoques:

  • Acelera la innovación
  • Incrementa la productividad
  • Reduce los errores
  • Reduce los costos de desarrollo
  • Mejora la calidad de los productos
¿Qué piensan las organizaciones sobre los Microservicios?
  • 91% está usando o tiene planes de usar microservicios
  • 60% ya tienen microservicios en fase piloto
  • 92% aumentó la cantidad de microservicios en el 2017
  • 86% espera que microservicios sea el “default” en 5 años
  • 63 % de aquellos con microservicios en producción consideran que han tenido éxito en la adopción

Fuente: Dimensional Research 2018 – Global Microservices Trends

Desafíos en los Microservicios

Si bien los microservicios entregan muchos beneficios, también hay que tomar en cuanta algunos cuidados a la hora de utilizarlos:

  • Complejidad: cada servicio es más sencillo, pero el sistema como un todo es más complejo.
  • Desarrollo y pruebas: no iniciar en microservicios sin DevOps
  • Congestión y latencia de red: el uso de muchos servicios pequeños y detallados puede dar lugar a más comunicación inter-servicios.
  • Integridad de datos: cada microservicio es responsable de la conservación de sus propios datos.
  • Administración: para tener éxito con los microservicios se necesita una cultura de DevOps consolidada.
¿Se puede convertir todo a Microservicios?
  • No se puede refactorizar todos los sistemas a microservicios
    • La mayoría de las aplicaciones tienen una política de “si no se rompe, no lo arregles”
    • Puede ser poco realista rediseñar los sistemas antiguos
  • Qué pasa si no puedes cambiar el almacenamiento de datos?
    • Se harían microservicios si los datos permanecen en un silo?
    • Se puede gestionar sin transaccionalidad a la base de datos?
  • Cómo encajan los sistemas existentes en una arquitectura de microservicios?
    • Cómo aislar sus problemas de disponibilidad de los sistemas existentes?
    • Qué pasa si no escalan tan bien como los nuevos microservicios?
Microservicios y DevOps

La modularidad de microservicios habilita la integración continua lo cual es objetivo de DevOps. El uso combinado de ambos enfoques:

  • Acelera la innovación
  • Incrementa la productividad
  • Reduce los errores
  • Reduce los costos de desarrollo
  • Mejora la calidad de los productos

¿Por dónde iniciar?

El camino hacia microservicios conlleva no solo un cambio de arquitectura, sino también de cultura en las organizaciones, por lo cual se recomiendan los siguientes pasos iniciar en el mundo de microservicios:

  • Realizar una evaluación general: Motivadores, GAPs “AS-IS” -> “TO-BE”
  • Definición detallada de los patrones para cada capa.
  • Definición de descubrimiento y/o capacidad de negocio.
  • Identificación y formalización del “Technology Stack” de ejecución.
  • Identificación del plan de capacitaciones.

Contáctenos

    























    Los datos suministrados acá serán incluidos en una base de datos para nuestros boletines. En cualquier momento usted podría renunciar a recibir boletines o avisos electrónicos. GBM no compartirá o venderá su información personal o direcciones de correo electrónico.
    En virtud de lo dispuesto en la Ley relacionada con la Protección de la personas frente al tratamiento de sus Datos Personales y su respectivo Reglamento, le informamos que mediante la cumplimentación del presente formulario el mismo constituye su consentimiento informado exigido por dicha ley. Sus datos personales quedarán incorporados y serán tratados en los bases/ ficheros titularidad de GBM, con el fin de enviarle información de promociones, nuevos productos, mantenerle informado, incluso por medios electrónicos, sobre cuestiones relativas a la actividad de la Compañía y sus servicios, así como para contactarlo eventualmente para conocer acerca de su experiencia con GBM y poder realizar investigaciones de mercado que nos ayudarán a poder brindarle un mejor servicio. Usted puede ejercer, en cualquier momento, los derechos de acceso, rectificación, cancelación y oposición de sus datos de carácter personal haciendo click en el botón para cancelar/anular la subscripción de los correos electrónicos enviados por mercadeo@gbm.net Como consecuencia de lo anterior, el suscribiente autoriza expresamente a GBM para que almacene y utilice los datos personales aquí previstos para los fines descritos supra.Ver más información