La compañía para la que trabajo está evaluando algunas soluciones de middleware para gobernanza, medición y seguridad de servicios web. Actualmente, estamos utilizando un Enterprise Service Bus (ESB) para este propósito, pero algunos tipos geniales en administración decidieron que implementarán algunos Middleware de administración de API.
Investigué un poco sobre estas soluciones de administración de API (también conocidas como API Gateway) pero no pude encontrar la diferencia entre ellas y los ESB reales. Evalué algunos documentos de Mule, WSO2, Oracle, etc., pero las características que ofrecen ambos productos parecen ser casi las mismas. La pregunta es, ¿qué puede hacer un API Management que un ESB no puede hacer y viceversa? ¿Qué valor se puede agregar a una infraestructura de TI reemplazando un ESB por una API Gateway?
fuente
Respuestas:
La razón por la que está confundiendo los conceptos es porque los vendedores los están vendiendo en un paquete. Pero definitivamente son conceptos separados.
Un API Gateway proporciona un punto de acceso central para administrar, monitorear y asegurar el acceso a sus servicios web expuestos públicamente. También le permitiría consolidar servicios en puntos finales dispares como si todos vinieran de un único host. Por ejemplo, supongamos que tenía diez puntos finales de servicio diferentes que formaban parte de un único "conjunto" de servicios. En lugar de informar a los consumidores sobre su servicio para usar service1.yourcompany.com para un servicio y service2.yourcompany.com para otro, etc., puede hacer que todos apunten a api.yourcompany.com/service1 o api.yourcompany.com / service2 y la puerta de enlace serían responsables de redirigir las solicitudes a los puntos finales apropiados.
Un ESB es un "Bus" interno que permite que las aplicaciones y los servicios se comuniquen entre sí de manera desacoplada. Todas las aplicaciones pueden conectarse al bus y pueden recibir cualquier mensaje que les interese cuando lo publique otra aplicación. También pueden publicar sus propios mensajes que otra aplicación puede escuchar y responder. Las aplicaciones no son responsables de conectarse directamente entre sí, publican sus mensajes en el autobús y todas las partes interesadas escuchan y reaccionan.
Lógicamente, la API Gateway no es un reemplazo para un ESB sino una mejora para una arquitectura orientada a servicios.
fuente