消息队列和Kafka

1.消息队列:将需要发送的数据存放在队列中

2.消息队列中间件:存储消息的组件(软件),如Kafka、RabbitMQ、ActiveMQ、RocketMQ、ZeroMQ

3.Kafka应用场景:

异步处理

系统解耦

流量削峰

4.消息队列模式

点对点模式:每个消息只有一个消费者,被消费后,消息就存在了

发布订阅模式:每个消息可以有多个订阅者(消费者),发布者和订阅者有时间上的依赖性

为了消费信息,订阅者需要提前订阅消息的主题

5.Kafka:由scala和java开发

Apache Kafka 是一个分布式流平台,关键能力:

5.1发布和订阅流数据流,类似消息队列

5.2以容错的方式 存储数据流

5.3处理数据流

6.Kafka组件

broker:单个服务器节点,多个broker组成Kafka集群,通过ZooKeeper维护集群

broker是无状态的

topic:主题,代表某一类消息

消息一旦发送到主题中,就不能更改

ZooKeeper:管理和协调broker,存储了Kafka的元数据(topic、partition、consumer)

producer: 将数据推送给topic

consumer:从topic接收消息

consumer-group:是可扩展的、有容错性的消费者机制

一个消费者组有唯一ID

一个组内的所有消费者共同消费topic的所有partition数据

partition:分区,一个topic可以分成多个partition

replication:副本,将数据复制多个副本,分布在多个broker上

offset:偏移量,记录着要消息消费的进度,

offset保存在ZooKeeper中

相关推荐

  1. 消息队列Kafka

    2024-02-01 07:48:01       47 阅读
  2. 消息队列Kafka

    2024-02-01 07:48:01       60 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-01 07:48:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-01 07:48:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-01 07:48:01       82 阅读
  4. Python语言-面向对象

    2024-02-01 07:48:01       91 阅读

热门阅读

  1. ubuntu 系统切换root用户

    2024-02-01 07:48:01       52 阅读
  2. npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED

    2024-02-01 07:48:01       60 阅读
  3. unity(WebGL) 把截图保存下载到本地

    2024-02-01 07:48:01       58 阅读
  4. redis stream结合springboot构造简单消息队列

    2024-02-01 07:48:01       47 阅读
  5. 实现可编辑excel

    2024-02-01 07:48:01       61 阅读
  6. 上班族学习方法系列文章目录

    2024-02-01 07:48:01       65 阅读