Apache Kafka можно охарактеризовать как «платформу распределенной потоковой передачи», где ActiveMQ, MOM (промежуточное ПО, ориентированное на обмен сообщениями), является «Брокер сообщений общего назначения».
Kafka делает одно, и одно очень хорошо: в архитектуре публикации / подписки (публикации / подписки) сообщения записываются в темы (журналы, распределяемые по разделам), которые затем потребители потребляют из по зачету. Kafka, созданный для облака с очень высокой пропускной способностью, делает упор на этом, и в наши дни идеальный вариант для асинхронного обмена сообщениями.
ActiveMQ поддерживает семантику pub / sub и точка-точка. В последнем случае очередь обрабатывает отдельные сообщения между одним производителем и конкретным потребителем. Это, как и pub / sub, является асинхронным, но работает несколько иначе: если потребитель получает сообщение в очереди, но не может его подтвердить, сообщение затем отправляется другому потребителю. ActiveMQ также поддерживает несколько протоколов обмена сообщениями, включая AMQP, STOMP, JMS, CAMEL и MQTT.
Хотя Apache Kafka может быть идеальным помощником для простой асинхронной связи; Некоторые, похоже, предпочитают ActiveMQ для более сложных шаблонов маршрутизации, таких как корпоративные шаблоны, однако многие утверждают, что Kafka является улучшением по сравнению с ActiveMQ, по таким причинам, как более высокая пропускная способность, более эффективное управление разделы для журналов / тем и более тонкие ACL для потребителей, использующих тему.
person
John Hammink
schedule
17.04.2019