美文网首页
消息队列与python

消息队列与python

作者: M_unicorn | 来源:发表于2018-12-17 17:02 被阅读0次

基于生产者消费者模式

一、kafka

运行于zookeeper之上,从而实现整个集群化的管理

1.broker(服务端)

默认9092端口

持久化存储到disk中

基于磁盘存储

可以建多个充当集群

2.topic(队列)

区分数据

3.partition(分区)

topic内部

物理层面多个分区平均分散在多个broker上

4.备份,副本

备份存于其他broker

备份以分区为单位

5.版本

apache和confluent

6.工具

kafka-python 不稳定,会丢数据

confluent-kafka-python 较稳定

7.安装

依赖于librdkafka,先安装

配置

桥接 需要做端口映射 ,kafka 连接zookeeper:端口  

一个zookeeper相当于一个节点

一个kafka一个brokerID

8.生产者

有回调

需要指明topic

9.消费者

需要指明topic

每个消费者必须有一个组 group

10.特征

消费分区是无序的,消费分区内的消息是有序的,整体是无序的

指定分区进行生产消费

subscribe订阅消费数据时,同一消费者组同一条数据, 只会被消费一次

assign seek 消费数据时可以消费多次

一个消费者可同时消费多个topic

对于topic的消费,消费者的数量应不多于topic分区的数量,否则多余的消费者将必定无法接受到消息

同一个分区的数据只会被一个消费者消费

相关文章

网友评论

      本文标题:消息队列与python

      本文链接:https://www.haomeiwen.com/subject/yzinxqtx.html