目前业务上需要选用合适的消息队列来做数据传输,因此特意调研了一下当下较主流的消息队列的各特点:

消息中间件三要素:生产者、消息、消费者。

 

衡量标准:生产者、消息、消费者三者的交互。

1.消息路由:消息如何经过消息中间件到达消费者。

2.消息可靠性:

2.1.不允许消息丢失

2.2.允许消息丢失,性能需求大于可靠性

3.消息重放:已经消费过的消息是否能设置某一时间间隔后重新被消费(适用于新系统导入旧数据,防数据丢失)

4.消息堆积:流量高峰期时,消息中间件在高并发投递消息时可能会出现问题,所以把消息暂存在中间件,等流量高峰过去,再投给下游业务

5.消息优先级:

5.1.消息投递顺序和消费顺序一致

5.2.可设置某些消息的消费优先级

6.性能和扩展

6.1.性能:主要指tps、qps以及并发连接数

6.2.扩展:通过添加消费者来提高消费速率、消息中间件的容量上限

 

较主流的消息队列的比较与选型

 

鉴于目前我们业务是做数据传输,主要是需要保证数据的完整性,综合比较,选择了RabbitMQ。

 

发现在rocketMQ的官方文档上有一个比较图:

较主流的消息队列的比较与选型

分类:

技术点:

相关文章: