我是 ESB 的新手,正在阅读一本关于 Mule 和 ServiceMix 的旧书。
经过一番研究,并查看 FuseSource 文档,其中指出 JBI 已被弃用以支持 OSGi 服务,我是否正确地假设用于集成目的:-
ServiceMix ESB(现在)主要是在 OSGi 容器中运行的 Camel
服务可以部署为 OSGi 包,Camel 可以以某种方式使用这些服务,否则它会使用 POJO 进行自定义处理
谢谢
我是 ESB 的新手,正在阅读一本关于 Mule 和 ServiceMix 的旧书。
经过一番研究,并查看 FuseSource 文档,其中指出 JBI 已被弃用以支持 OSGi 服务,我是否正确地假设用于集成目的:-
ServiceMix ESB(现在)主要是在 OSGi 容器中运行的 Camel
服务可以部署为 OSGi 包,Camel 可以以某种方式使用这些服务,否则它会使用 POJO 进行自定义处理
谢谢
我的两分钱:ServiceMix 是 JAVA 的“现成”集成容器。它在 OSGI 运行时 ( Apache Karaf )之上打包了许多功能,其中重点介绍了:
所以:
我喜欢 el.atomo 的回答,但我会为问题 2 添加:
- 服务可以部署为 OSGi 包,Camel 可以以某种方式使用这些服务,否则它会使用 POJO 进行自定义处理
Camel 本身就是 POJO。根据 servicemix camel 指南,每个 OSGI 包都将拥有自己的 CamelContext。NMR(或 TCP、HTTP 或 JMS 或您使用的任何骆驼组件)用于在特定的 OSGI 包和位于不同 OSGI 包(因此不同的 CamelContexts)中的骆驼路由之间进行通信
内部带有骆驼设置的 vanilla OSGi 与 Servicemix 之间的最大区别可能是包含 ActiveMQ、NMR 和 BPMN2。
参考资料: http : //servicemix.apache.org/docs/4.5.x/ http://servicemix.apache.org/docs/4.5.x/nmr/nmr-camel.html http://servicemix.apache.org /docs/4.5.x/camel/camel-guide.pdf