我有3个服务器(1主,2从)。每个都安装了Zookeeper(最新版本)和ActiveMQ“Classic”。ActiveMQ“Classic”配置为基于Zookeepers节点的复制级别DB。
现在我想使用Apache Camel进行消息路由。
Camel 之路应该在哪里?我写了一个Spring Boot App,但我想有一个像ActiveMQ一样的故障转移。
因此,我阅读了有关将jar放入ActiveMQ lib目录并设置XML配置Enterprise Integration Patterns的内容
另一种方法是使用Camel组件
有没有人曾经遇到过这个问题,并希望分享解决方案?
1条答案
按热度按时间20jt8wwn1#
嗯哦,正如评论中提到的,小心级别DB的东西,因为它是弃用。只有使用它,如果你已经彻底测试!在我们的测试中,它运行得很好。但是,当级别DB由于某种原因被损坏时,数据就会丢失。我们无法恢复级别DB。不适合生产。
而且甚至不要考虑基于NFS的解决方案。NFS真的不适合这个,我们在测试中遇到了很多问题。例如,我们经常管理它有多个主人或根本没有主人。所以我们放弃了。
最后,我们使用plain single broker,因为在主/从或复制设置中解决问题的复杂性可能相当高。尽管我们有“单点故障”,但我们几乎从未遇到过任何计划外的停机时间。
然而,一群人告诉我,一个经纪人网络工作得很好,有一个冗余的设置。至少有一个人在谈论一个真正的大环境。
好吧,这并不是对你问题的回答,不是吗?
您可以将Camel路由放在代理XML配置旁边,然后这些路由在ActiveMQ进程内运行。See here for an example。
如果你想构建一个SpringBoot应用程序来运行Broker,你只需要在Spring中提供Camel上下文,它应该会被选中。