如何选择消息队列
一、选择消息队列产品的基本标准 在消息队列的技术选型上,并不存在说哪个消息队列就是“最好的”。常用的几个消息队列,每个产品都有自己的优势和劣势,需要根据现有系统的情况,选择最适合的那款产品。 技术产品的及格标准: 必须是 开源产品 :如果遇到Bug至少有机会通过修改源代码迅速修复或规避,解决燃眉之急。 必须是近年来 比较流行 并且有一定 社区活跃度 的产品:流行的好处是,只要使用的场景不太冷门,遇到的Bug都可以找到解决办法。 流行的产品与 周边生态系统 会有一个比较好的集成和兼容:比如kafka和Flink就有比较好的兼容性,Flink内置了kafka的Data Sourse,使得你不用自己开发一个Flink的Data Source。 消息队列产品的及格标准: 消息的可靠传递:确保 不丢消息 。 Cluster:支持 集群 ,确保不会因为某个节点宕机导致服务不可用,当然也不能丢消息。 性能:具备足够好的性能,能 满足绝大多数场景 的性能要求。 二、可供选择的消息队列产品 1、RabbitMQ 介绍: 使用 Erlang语言编写 ,最早是为电信行业系统之间的可靠通讯性设计的,也是少数几个 支持AMQP 协议的消息队列。 轻量级 、迅速,开箱即用,非常容易部署和使用。 有一个特色的功能是支持非常 灵活的路由配置 。它在生产者和队列之间增加了一个 Exchange模块