Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka Kafka与ActiveMQ Artemis的内存使用和稳定性_Apache Kafka_Message Queue_Activemq Artemis - Fatal编程技术网

Apache kafka Kafka与ActiveMQ Artemis的内存使用和稳定性

Apache kafka Kafka与ActiveMQ Artemis的内存使用和稳定性,apache-kafka,message-queue,activemq-artemis,Apache Kafka,Message Queue,Activemq Artemis,我们已经很好地使用ActiveMQ(Artemis)好几年了。最近,我们考虑探索Kafka而不是ActiveMQ以获得更好的吞吐量。我们的经验好坏参半。我们在Linux机器上运行这两个应用程序 与ActiveMQ相比,我们知道Kafka需要更多的基础设施(专用虚拟机),而ActiveMQ可以在一个盒子中与其他应用程序一起运行。如果我们尝试将Kafka与其他应用程序一起运行,几天后它就会突然崩溃。为什么会这样 Kafka需要比ActiveMQ多得多的内存。崩溃后,我们多次发现这是由于Kafka中的

我们已经很好地使用ActiveMQ(Artemis)好几年了。最近,我们考虑探索Kafka而不是ActiveMQ以获得更好的吞吐量。我们的经验好坏参半。我们在Linux机器上运行这两个应用程序

  • 与ActiveMQ相比,我们知道Kafka需要更多的基础设施(专用虚拟机),而ActiveMQ可以在一个盒子中与其他应用程序一起运行。如果我们尝试将Kafka与其他应用程序一起运行,几天后它就会突然崩溃。为什么会这样
  • Kafka需要比ActiveMQ多得多的内存。崩溃后,我们多次发现这是由于Kafka中的OutofMemoryError造成的(而ActiveMQ在同一台机器上运行得非常好)
  • 我们的生产服务器在单节点上运行ActiveMQ,而如果是Kafka,则需要集群
  • 卡夫卡没有内置的用户界面。是的,我们可以得到像Kafdrop这样的其他工具
  • Kafka还需要一个Zookeeper节点/集群
  • 总体而言,我们发现卡夫卡需要昂贵的基础设施和监控工具。但我知道卡夫卡正被许多大公司所使用


    我想知道为什么卡夫卡经常因为记忆错误而崩溃。我们的设置有问题吗?请分享您的想法。

    目前写的这个问题太模糊了。如果我是你,我只会关注你所观察到的卡夫卡问题的细节。将卡夫卡与ActiveMQ Artemis进行这样的比较并不能解决您的问题,坦率地说,一般来说也没有多大意义。它们的实现有很大的不同,在许多情况下被部署来解决非常不同的问题。我不希望它们一定具有相同的运行时特征。不清楚您提供了多少内存。文档建议在生产环境的专用机器上安装6GB(以及3-5台专用Zookeeper服务器,而不是一台)。另外值得注意的是,与ActiveMQ Artemis相比,您可能无法为您的Kafka用例获得任何额外的吞吐量。当然,每个用例都是不同的,但是涉及持久性和复制的吞吐量结果在两者之间非常接近。谢谢Justin。我们需要一个消息代理在各种微服务之间进行通信。正如您所说,它们有不同的实现。我的用例很简单,所以我的问题是:对于一个稳定的设置,哪一个是轻资源——ActiveMQ还是Kafka?对我来说,答案显然是前者。很明显,微服务通过异步通道进行通信。