Kafka 与 RabbitMQ 之争
分布式、并行与集群计算
2017-09-04 v1 性能
摘要
发布/订阅(Publish/subscribe)是一种分布式交互范式,非常适用于可扩展且松耦合系统的部署。Apache Kafka 和 RabbitMQ 是两个流行的开源且受商业支持的发布/订阅系统,它们已存在近十年并得到了广泛采用。鉴于这两个系统的流行度以及两者均被标榜为发布/订阅系统的事实,相关在线论坛中两个经常被问到的问题是:它们彼此相比如何?该使用哪一个?在本文中,我们通过基于发布/订阅系统核心功能建立通用的比较框架,以整体的方式构建论点。利用该框架,我们随后对这两个系统的共同特征进行了定性和定量(即实证)比较。此外,我们还强调了每个系统独有的特征。在列举了一组最适合 RabbitMQ 或 Kafka 的用例后,我们试图通过一个决策表引导读者根据其特定的需求集选择最佳架构。
引用
@article{arxiv.1709.00333,
title = {Kafka versus RabbitMQ},
author = {Philippe Dobbelaere and Kyumars Sheykh Esmaili},
journal= {arXiv preprint arXiv:1709.00333},
year = {2017}
}
备注
25 single-column pages, 7 figures, 5 tables