Blog gratis
Reportar
Editar
¡Crea tu blog!
Compartir
¡Sorpréndeme!
Blog de la Escuela de Educación Secundaria Técnica N 8 de Quilmes
Administrador Prof. Claudio Enrique Alonso Alvite
img
19 de Noviembre, 2014    General

Trabajar con microservicios: evitando la frustración de las (enormes) aplicaciones monolíticas


Microservicios

¿Qué pasa cuando tu aplicación corporativa no para de engordar? Vamos echándole encima más y más servicios. Llega un punto en que parece que lo único que podemos hacer es escalar en hardware (más maquinas) hasta llegar al colapso.

¿Dónde está el problema? Párate a pensar que naturaleza tiene tu arquitectura. Cúal es el punto de entrada y cómo despliega la aplicación que debe ofrecer el soporte al resto de aplicaciones y servicios. Quizás te empieces a dar cuenta del enorme “cuello de botella” que representa ese monolito creado a base de meter más madera.

El uso de microservicios

Para evitar tener una enorme piedra “monolítica” se empieza a escuchar hablar sobre microservicios. ¿Recordáis los servicios SOAP? El cóctel .WSDL, JEE y ESB para los javeros (y equivalente para la gente de Microsoft) ha mejorado con el tiempo. Ahora tenemos APIs REST que exponen pequeños comportamientos y se comunican de forma distribuida entre servicios, sin importan que no estén en la misma aplicación.

Arquitectura Microservicios

La ventajas de una arquitectura basada en microservicios

  • Combinar los servicios como nos interesen. Incluso, reutilizarlos para distintos uso dentro de la empresa. Como piezas de puzzle podemos crear aplicaciones que usen una misma lógica de negocio sin estar cautiva en una aplicación monolítica.
  • Escalar a nivel de microservicios. Cada uno de ellos expone una funcionalidad, así podemos distribuirlo según nuestras necesidad pensando en la demanda y el balanceo de carga de cada aplicación. Esto contrapone la idea poco eficiente de replicar aplicaciones enteras cargadas de funcionalidad por unas pocas que represente la mayor carga.
  • Simplificamos el mantenimiento. Cumplen a la perfección el principio SOLID. Podemos desechar componentes que no reutilizando o extenderlos en otros para engancharlo en nuestra aplicación. Es más fácil tirar algo que no usemos a la basura que mantenerlo como código legacy dentro de una aplicación monolítica.
  • Su fallo no arrastra a todo el sistema. Si un componente no funciona correctamente no afecta al resto. Se puede aislar y manejar el error, desplegando por separado.
  • El despliegue puede ser progresivo sin parar todo de golpe. Empezamos a ver más luz a la integración continua alcanzando mayores cifras de disponibilidad. Aunque recuerda que esto implica que ya no tienes un único contenedor, sino que hay que estar pendiente de n contenedores de aplicaciones.

El camino hacia los microservicios no es trivial. Al igual que mencionamos que todo trabaja en conjunto, llegar ahí necesita portar el código legacy de la aplicación monolítica y parcelarlo. No te vuelvas loco en convertir en microservicios tu actual aplicación. Comienza poco a poco explorando este tipo de arquitectura con las nuevas funcionalidades/servicios que crees.

Para entender más en detalle lo qué son los microservicios os recomiendo a un clásico como Martin Fowler. Él aporta todo ese halo filosófico y teórico, sin importar el lenguaje o la plataforma, en su artículo sobre la arquitectura de Microservicios.

Sigue a Genbetadev

Palabras claves
publicado por alonsoclaudio a las 22:59 · Sin comentarios  ·  Recomendar
 
Más sobre este tema ·  Participar
Comentarios (0) ·  Enviar comentario
Enviar comentario

Nombre:

E-Mail (no será publicado):

Sitio Web (opcional):

Recordar mis datos.
Escriba el código que visualiza en la imagen Escriba el código [Regenerar]:
Formato de texto permitido: <b>Negrita</b>, <i>Cursiva</i>, <u>Subrayado</u>,
<li>· Lista</li>
CALENDARIO
Ver mes anterior Abril 2024 Ver mes siguiente
DOLUMAMIJUVISA
123456
78910111213
14151617181920
21222324252627
282930
BUSCADOR
Blog   Web
TÓPICOS
» General (2606)
NUBE DE TAGS  [?]
SECCIONES
» Inicio
ENLACES
MÁS LEÍDOS
» Analizando el LiveBox 2.1 de Orange
» Cómo espiar WhatsApp
» Cómo usar Metashield protector for Client y por qué utilizarlo
» Detectando tráfico de conexiones HTTP inversas de Meterpreter (Snort)
» Ejecución remota de código arbitrario en OpenSSH
» Ganar dinero con 1.200 Millones de identidades robadas
» Hardware y sus 4 Funcionamientos Basicos y Principales en una Computadora
» Redes de la Deep Web: CJDNS y la Red Hyperboria
» Unidad Central de Procesamiento CPU
» Wassap, la aplicación que permite usar WhatsApp desde la PC
SE COMENTA...
» Cómo espiar WhatsApp
595 Comentarios: Scott, Scott, Jarlinson mercy, [...] ...
» Qué hacer ante el robo de un teléfono móvil o una tableta
2 Comentarios: best buy security cameras swann, best buy security cameras swann
» Espiando usuarios gracias a la vulnerabilidad en cámaras TRENDnet
1 Comentario: Coin
» Recopilatorio de aplicaciones y sistemas vulnerables para practicar
2 Comentarios: vera rodrigez ...
» SoftPerfect WiFi Guard permite saber quién esta conectado a mi WiFi
2 Comentarios: firdous ...
SOBRE MÍ
FOTO

Prof. Claudio Enrique Alonso Alvite



» Ver perfil

AL MARGEN
Escuela de Educacion Secundaria Tecnica N 8 de Quilmes
(Técnicos en Informática Personal y Profesional)
FULLServices Network | Blogger | Privacidad