首页 文章

ActiveMQ vs Apollo vs Kafka

提问于
浏览
59

我之前没有任何使用* MQ的经验,而且我希望通常能够构建有关JMS和消息队列的知识 . 这样,我想知道我是应该从ActiveMQ开始,还是只是“忽略”它,然后开始自学阿波罗 . Apollo是否像ActiveMQ一样功能齐全?它是否实现了JMS 2.0(我看到ActiveMQ卡在1.1中)?我会遗漏一些非常重要的东西吗?

另外,Kafka与这两种解决方案相比如何?

3 回答

  • 22

    Apache ActiveMQ是一款功能强大且功能强大的强大工具 . 它不是最快的MQ软件,但对于大多数用例来说足够快 . 功能包括灵活的clustring,故障转移,与不同应用服务器的集成,安全性等 .

    Apache Apollo试图为ActiveMQ编写一个新的核心来处理大量的客户端和消息 . 它没有ActiveMQ的所有便利功能,但扩展性更好 . 当您为其提供大型多核服务器和数千个并发连接时,Apache Apollo是一个非常快速的MQ实现 . 它有一个漂亮,简单的用户界面,但不是一个“一刀切”的解决方案 .

    似乎正在尝试将名为ActiveMQ Artemis的名称与HornetQ合并许多ActiveMQ功能 . HornetQ支持JMS2.0,所以我的谦虚猜测是它很可能出现在ActiveMQ 6.x中 .

    JIRAGithub

    Kafka 是一个不同的野兽 . 它是一个非常简单的消息代理,旨在尽可能快地在多个服务器上扩展持久性发布订阅(主题) . 对于中小型部署,Kafka可能不是最佳选择 . 它还具有实现高吞吐量的方法,因此您必须在灵活性方面进行大量交易以获得高分布式吞吐量 . 如果你是MQ和经纪人领域的新手,我想Kafka是矫枉过正的 . 另一方面 - 如果你有一个体面的服务器集群,并想知道如何通过它推送尽可能多的消息 - 给 Kafka 一个旋转!

  • 91

    这是一个较老的问题,但我会在这里提供更现代的答案 .

    • Apollo项目非正式死亡,他们认为Artemis是新的热点 . (link)阿波罗(似乎)停滞不前的发展并没有让我对 Artemis 的未来充满信心 .

    • 我的经验类似于我的项目(使用群集)的Petter 's answer in that ActiveMQ is feature rich and capable. However, it seems as if every release fixes random crashes and memory leaks and this does not inspire confidence. It'稳定版但是我们在过去的十几个版本中发现了奇怪的行为和崩溃(目前使用的是5.14.3)

    • 我没有使用过RabbitMQ(我当前的项目致力于ActiveMQ),但我将在下一个需要消息传递总线的项目上进行尝试 . 没有支持功能的厨房水槽将有希望意味着它更稳定 .

    编辑:2.3.0阿帕奇Artemis发布发生〜2017年9月5日 . 所以它似乎正在进行中 . 但是(link)更改日志似乎仍然太可怕了 .

  • 2

    我是ActiveMQ,Apollo,HornetQ在非持续场景和持久场景下的性能基准测试,我认为这将有助于您选择应该使用哪一个,链接如下所示:http://hiramchirino.com/jms-benchmark/ubuntu-2600k/index.html

相关问题