【发布时间】:2010-12-30 08:19:54
【问题描述】:
使用 Apache-Camel 和 ActiveMQ 构建系统的典型/首选方法是什么?如何实现高可用性? Camel 应该在什么容器中运行?
【问题讨论】:
标签: java apache-camel message-queue
使用 Apache-Camel 和 ActiveMQ 构建系统的典型/首选方法是什么?如何实现高可用性? Camel 应该在什么容器中运行?
【问题讨论】:
标签: java apache-camel message-queue
任何java应用程序都可以直接使用camel。唯一的要求是骆驼罐子应该存在于类路径中。所以任何容器都应该没问题。 从队列中获取消息的组件可以直接将消息推送到骆驼上下文,骆驼上下文可以进行处理。 对于高可用性,可以使用 ActiveMQ 集群。
【讨论】:
我们可以使用 apache karaf 作为容器,它提供模块化的 osgi 方法和 Jboss Fuse 作为 ESB。 maven-bundle-plugin 可用于部署而不是 jar,因为 bundle 包含用于导入和导出包的额外元数据
【讨论】:
根据我的经验,以下是答案:
问:用 Apache-Camel 和 ActiveMQ 构建系统的典型/首选方法是什么:
Ans : 这取决于您使用的技术堆栈。它可以使用 ant 和 maven 构建工具编译/构建。
Apache camel 是一种 ESB,主要用于使用 webservice/JMS(公共订阅模型)进行系统集成。
问:如何实现高可用性? Camel 应该在什么容器中运行?
Ans : Camel 支持多线程、执行器服务框架和并发消费者概念(又称并发),因此您可以对其进行配置并实现高可用性。
如果您使用的是独立应用程序(不是 Web),则可以在 jvm 上运行,而对于 Web 开发,它可以运行大多数 Web 开发容器,如 tomcat、Jboss 等。
【讨论】:
我建议您尝试将 Apache Karaf 用于 Camel 应用程序。
您还可以查看 Hawtio,它为您提供监控、日志和路线的可视化呈现。
如果您需要高可用性,请查看 Karaf Celar。 https://karaf.apache.org/documentation.html上有文档
【讨论】: