java - 如何在 apache servicemix 中的组件之间交换消息

标签 java tomcat war esb apache-servicemix

ESB 专家,需要一些帮助。我被困在 apache servicemix(v 4.5.3) 中。该场景是我们的企业应用程序之间的通信,包括一个已经在 tomcat 上执行的 Web 应用程序。两个应用程序是主要应用程序,最后一个是 Vert.x 服务器(用于推送通知)。他们都在不同的机器上执行。

问题是如何配置 servicemix,我可以将其用作 ESB 并让应用程序进行通信。 到目前为止我所做的: 1. 在部署文件夹中的 servicemix 中将( war )Web 应用程序作为 bundle 部署。

对于黑白独立应用程序来说,这是通信的正确方法吗?我在想的是不要在 servicemix 中部署任何 war/jar,只需用作 esb。我的意思是,是否有必要在 servicemix 中部署应用程序以进行通信?如果是,那么我将如何实现这一点,我的意思是我正在使用分布式环境并且 servicemix 在单独的机器上运行?

请指导我。我是 esb 世界的新手。如有任何疑问,请随时询问。

最佳答案

是的,您需要在具有集成逻辑和业务逻辑的 ServiceMix 中部署应用程序。

ServiceMix 使用 Apache Karaf 作为容器,因此它基本上只是一个应用程序服务器(基于 OSGi)。

要构建集成应用程序,您应该经常使用 Apache Camel,因为它与 ServiceMix 一起开箱即用。因此,我建议查看并了解有关 Apache Camel 的更多信息,以及如何使用它进行集成。

关于 stackoverflow 的另一个问题可以帮助您开始学习 Apache Camel:What exactly is Apache Camel?

Apache ServiceMix/Karaf 支持部署 WAR 文件以及 OSGi 包。后者使用较多。还有一些 WAR 文件可能无法工作,如果它们使用一些在 OSGi 环境中不能正常工作的库。

关于java - 如何在 apache servicemix 中的组件之间交换消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20267645/

相关文章:

java - 如何将我的 json 字符串进行 avro 二进制编码为字节数组?

java - 如何异步使用 log4j 的 FileAppenders?

java - 使用 Jsoup 库拆分值

tomcat - 如何配置tomcat重定向ip地址

java - 异常启动过滤器 Struts 2

maven-2 - 在 Maven 中禁用 war 覆盖

java - 带变量名的命令行参数

java - 在 Eclipse 中配置 tomcat 安全管理器

javascript - war 中js文件的http url?

gradle - jettyRun 在复制任务上引发了 war 写入问题