走进消息队列| 青训营笔记

70 阅读1分钟

前言

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

今日学习内容:

  • 消息队列的前世今生
  • 消息队列 - Kafka
  • 消息队列 - BMQ
  • 消息队列 - RocketMQ

正文

常见场景:

  • 系统崩溃

解决方案:解耦

image.png

  • 服务处理能力有限

解决方案:消峰

image.png

  • 链路耗时长尾

解决方案:异步

image.png

  • 日志如何处理

Log => 消息队列 => LogStash => ES => Kibana

什么是消息队列

消息队列(MQ),指保存消息的一个容器,本质是个队列。但这个队列呢,需要支持高并发,高并发,并且高可用

消息队列的前世今生

  1. 消息队列发展历程

image.png

  1. 业界消息队列对比

image.png

消息队列 - Kafka

  1. 使用场景

image.png

  1. 如何使用 Kafka

创建集群 => 新增 Topic => 编写生产者逻辑 => 编写消费者逻辑

  • step1: 首先创建一个 Kafka 集群
  • step2: 需要在这个集群中创建一个 Topic,并设置好分片数量
  • step3: 引入对应语言的 SDK,配置好集群和 Topic 等参数,初始化一个生产者,调用 Send 方法,将你的 Hello World 发送出去
  • step4: 引入对应语言的 SDK,配置好集群和 Topic 等参数,初始化一个消费者,调用 Poll 方法,收到生产者发送过来的 Hello World.
  1. 基本概念

消息队列 - BMQ

消息队列 - RocketMQ