[走进消息队列 | 青训营课程笔记 ]

107 阅读1分钟

[ 分布式定时任务 | 青训营课程笔记 ]

这是我参与「第五届青训营」伴学笔记创作活动的第13天

01.前世今生

消息队列发展历程

image.png 业界消息队列对比

  • Kafka:分布式的、分区的、多副本的日志提交服务,在高吞吐场景下发挥较为出色
  • RocketMQ:低延迟、强一致、高性能、高可靠、万亿级容量和灵活的可扩展性,在一些实时场景中运用较广
  • Pulsar:是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体采用存算分离的架构设计
  • BMQ: 和Pulsar架构类似,存算分离,初期定位是承接高吞吐的离线业务场景,逐步替换掉对应的Kafka集群

02.消息队列-Kafka

使用场景:

  • 搜索服务
  • 直播服务
  • 订单服务
  • 支付服务
  • 搜索、点赞、评论、收藏

如何使用Kafka

image.png

基本概念

image.png

  • Offset:消息在partition内的相对位置信息,可以理解为唯一ID,在partition内部严格递增。
  • Replica:每个分片有多个Replica,Leader Replica将会从ISR中选出。

数据复制

image.png

Kafka架构

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

03.消息队列-BMQ

简介: 兼容Kafka协议,存算分离,云原生消息队列

运维操作对比

image.png

image.png 写文件流程 image.png