详解Kafka消息队列的两种模式

1. 点对点模式(一对一)
  • 1)模式特点:

消息生产者生产消息发送到Queue中,然后消息消费者从Queue中取出并且消费消息。消息被消费以后,queue中不再存储该条消息,所以消息消费者不可能消费到已经被消费的消息。Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者消费。
详解Kafka消息队列的两种模式_第1张图片

  • 2)数据拉取方式:消费者主动拉取。

  • 3)模式缺点:消息不能被重复消费。

2. 发布/订阅模式(一对多)
  • 1)模式特点:

消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。和点对点方式不同,发布到topic的消息会被所有订阅者消费。

  • 2)数据拉取方式:消费者主动拉取、消费者被动接受(类似微信公众号)

  • 3)模式缺点:当数据拉取方式为消费者被动接受时,消费者的消费速度可能跟不上生产者的生产速度。
    详解Kafka消息队列的两种模式_第2张图片

你可能感兴趣的:(#,Kafka,kafka)