IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> python 操作kafka消费两条同样的数据问题 -> 正文阅读

[大数据]python 操作kafka消费两条同样的数据问题

今天实验kafka的时候 生产者明明生产了一条数据 但是消费者消费了两条数据查了半天文档之类的还有思路回溯想想 原来是没加消费组 - -

	class MyHeartbeatConsumer(object):
def __init__(self, app=None):
    self.app = None
    self.C_obj = None
    if app is not None:
        self.init_app(app)

def init_app(self, app):
    """
    将flask对象挂在当前对象中
    :param app:
    :return: 返回值是当前实例化对象,将当前对象反挂在flask对象中
    """
    self.app = app
    self.C_obj = self.link_kafka_consumer(self)
    thread = Thread(target=self.circular_msg, kwargs={"obj": self.C_obj})
    thread.setDaemon(True)
    thread.setName("辅助管理kafka线程")
    thread.start()
    return self

@error_function
def link_kafka_consumer(self, *args, **kwargs):
    """
    链接kafka的消费者
    """
    consumer = KafkaConsumer(
        self.app.config.get("KAFKA_HEARTBEAT_TOPIC"),
        bootstrap_servers=[self.app.config.get("KAFKA_HEARTBEAT")],
        group_id='my-group'
    )
    return consumer

@error_function
def circular_msg(self, *args, **kwargs):
    """
     consumer : 是一个消息队列,当后台有消息时,这个消息队列就会自动增加.所以遍历也总是会有数据,当消息队列中没有数据时,就会堵塞等待消息带来
     obj : 当前链接的实体库


    """
    obj = kwargs.get("obj")
    print("1231312312")
    for message in obj:
        dic = {}
        dic.update(
            {
                json.loads(message.key): json.loads(message.value)
            }
        )
        print(dic)

大概的意思就是 生产者生产消息会推送到构建kafka时设置的分区里 而我就是两个 没有消费组的话就会共同消费两个分区 设置了消费组则两个分区消费同一份数据

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-08-19 12:07:10  更:2021-08-19 12:08:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 12:57:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码