Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Componentes de sistemas distribuidos
En una arquitectura de microservicios, el descubrimiento de servicios se refiere al proceso de localizar e identificar dinámicamente las ubicaciones de red (direcciones IP y puertos) de los microservicios individuales dentro de un sistema distribuido.
Al elegir un enfoque AWS, tenga en cuenta factores como:
-
Modificación del código: ¿Puede obtener los beneficios sin modificar el código?
-
Tráfico entre VPC o entre cuentas: si es necesario, ¿su sistema necesita una gestión eficiente de la comunicación entre diferentes o? VPCs Cuentas de AWS
-
Estrategias de implementación: ¿Su sistema usa o planea usar estrategias de implementación avanzadas, como las implementaciones «azul-verde» o «Canary»?
-
Consideraciones sobre el rendimiento: si su arquitectura se comunica con frecuencia con servicios externos, ¿cuál será el impacto en el rendimiento general?
AWS ofrece varios métodos para implementar la detección de servicios en su arquitectura de microservicios:
-
Amazon ECS Service Discovery: Amazon ECS admite la detección de servicios mediante su método basado en DNS o mediante la integración con AWS Cloud Map (consulte ECS Service Discovery). ECS Service Connect mejora aún más la administración de la conexión, lo que puede resultar especialmente beneficioso para aplicaciones más grandes con varios servicios que interactúan.
-
Amazon Route 53: Route 53 se integra con ECS y otros AWS servicios, como EKS, para facilitar la detección de servicios. En el contexto de ECS, Route 53 puede usar la función ECS Service Discovery, que aprovecha la API de nombres automáticos para registrar y anular el registro de los servicios automáticamente.
-
AWS Cloud Map: Esta opción ofrece una detección dinámica de servicios basada en una API, que propaga los cambios entre los servicios.
Para necesidades de comunicación más avanzadas, Amazon VPC Lattice es un servicio de redes de aplicaciones que conecta, monitorea y protege de manera uniforme las comunicaciones entre sus servicios, lo que ayuda a mejorar la productividad para que sus desarrolladores puedan centrarse en crear funciones que sean importantes para su empresa. Puede definir políticas de administración, acceso y monitoreo del tráfico de red para conectar los servicios de cómputo de manera simplificada y uniforme en todas las instancias, contenedores y aplicaciones sin servidor.
Si ya utilizas software de terceros, como HashiCorp Consul
La elección entre estas opciones debe ajustarse a tus necesidades específicas. Para requisitos más simples, soluciones basadas en DNS como Amazon ECS o AWS Cloud Map podrían ser suficientes. Para sistemas más complejos o más grandes, las mallas de servicio como Amazon VPC Lattice podrían ser más adecuadas.
En conclusión, el diseño de una arquitectura de microservicios AWS consiste en seleccionar las herramientas adecuadas para satisfacer sus necesidades específicas. Si tiene en cuenta las consideraciones expuestas, puede asegurarse de que está tomando decisiones informadas para optimizar la detección de servicios y la comunicación entre servicios de su sistema.