在Oracle SOA或任何其他ESB套件上构建基于MSA的服务是否明智?有优势还是劣势?
如果我在消息队列中使用Java,Spring和JPA - 比如说RabbitMQ,我可以在更加受控制的环境中实现它,而且经常性费用更少。当然最终会混合使用像Drools或JBPM等类似的工具来实现SOA或ESB Suite中可能是OOTB(开箱即用)的东西。但是,在没有为额外环境支付许可费的情况下扩展特定服务当然应该是一个很好的捕获权吗?
答案 0 :(得分:1)
微服务架构模式适用于后端系统/服务的开发,而ESB(例如Oracle SOA Suite)旨在作为消费者和后端服务之间的中间层。后端服务包含丰富的应用程序逻辑,而ESB服务仅提供中介功能,如路由,转换,编排等。
ESB不适用于丰富的应用程序逻辑,尽管可以这样做。
使用ESB(例如Oracle SOA Suite)来托管微服务是可以实现的,但与有限的功能和可扩展性相比,您将获得巨大的开销。如果您正在寻找集中式API管理(跟踪,安全性等),您可以将API网关放入您的架构而不是全面的ESB。