一种Kafka中新增topic的消费数据自动持久化方法技术

技术编号:27656194 阅读:14 留言:0更新日期:2021-03-12 14:18
本发明专利技术公开了一种Kafka中新增topic的消费数据自动持久化方法,在管理页面提供新增/删除topic对应的数据库存储表的功能,实现topic及其对应的数据库存储表的灵活控制;新增topic的Consumer在消费该topic中的消息时,可以自动将消费数据保存至数据库对应的存储表中。

【技术实现步骤摘要】
一种Kafka中新增topic的消费数据自动持久化方法
本专利技术涉及Kafka持久化
,具体是一种Kafka中新增topic的消费数据自动持久化方法。
技术介绍
Kafka是一种支持分布式消息存储和消费系统,其构架如图1所示。KafkaCluster(集群)包含多个服务器,服务器节点称为Broker。Kafka以topic(类别)作为基础逻辑单元对消息进行存储、消费等操作。为了线性提高吞吐率,Kafka在物理上将topic分成多个Partition(分区),每个Partition通过创建一定数目的副本并分散存储在不同Broker上以支持容错。Kafka通过集成分布式协调服务ZooKeeper实现元数据存储以及集群管理等功能,从而支持集群的动态水平扩展。基于Kafka的消息定发布订阅服务系统,注册通过的发布方创建topic,订阅方订阅该topic,发布方往该topic中发布消息。现有的Kafka数据持久化,是在项目配置文件中预先设定topic列表,并在数据库中创建好对应的存储表。Producer向列表中的某一topic中发布消息后,Consumer消费该消息的消费数据能够保存到对应的存储表中。针对新增的topic,只能人工修改项目配置文件并创建存储表,才能使得Consumer消费该topic中消息的消费数据得以保存到对应的存储表中,即不能灵活控制topic及其对应的数据库存储表。
技术实现思路
针对现有Kafka持久化技术不能自动对新增topic进行持久化的技术缺陷,本专利技术提供一种Kafka中新增topic的消费数据自动持久化方法。本专利技术保护一种Kafka中新增topic的消费数据自动持久化方法,包括以下步骤:步骤1,人工在Kafka服务后台提供的管理页面上创建表及配置表中字段;步骤2,Kafka服务后台根据管理页面上填写的表名向Kafka集群发布topic创建指令;步骤3,Kafka集群根据topic创建指令创建topic,数据库中自动生成对应存储表;步骤4,Kafka服务后台针对新增topic创建对应的Consumer;步骤5,当Kafka服务后台接收归属于该新增topic的消息时,根据消息来源创建对应的Producer,并将消息发布到其该新增topic中;步骤6,该新增topic的Consumer监听到消息后,消费消息,产生消费数据;步骤7,Kafka服务后台保存该消费数据,并将其存储到该新增topic对应的存储表中。优选的,管理页面提供除提供创建topic、创建表及配置表中字段的接口外,还提供删除topic及其对应数据库存储表的接口。本专利技术还保护一种基于上述Kafka中新增topic的消费数据自动持久化方法的消息定发布订阅服务系统。本专利技术在管理页面提供新增/删除topic对应的数据库存储表的功能,实现topic及其对应的数据库存储表的灵活控制;新增topic的Consumer在消费该topic中的消息时,可以自动将消费数据保存至数据库对应的存储表中。附图说明图1为Kafka中新增topic的消费数据自动持久化方法流程图。具体实施方式下面结合附图和具体实施方式对本专利技术作进一步详细的说明。本专利技术的实施例是为了示例和描述起见而给出的,而并不是无遗漏的或者将本专利技术限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本专利技术的原理和实际应用,并且使本领域的普通技术人员能够理解本专利技术从而设计适于特定用途的带有各种修改的各种实施例。实施例1一种Kafka中新增topic的消费数据自动持久化方法,如图1所示,包括以下步骤:步骤1,人工在Kafka服务后台提供的管理页面上创建表及配置表中字段;步骤2,Kafka服务后台根据管理页面上填写的表名向Kafka集群发布topic创建指令;步骤3,Kafka集群根据topic创建指令创建topic,数据库中自动生成对应存储表;步骤4,Kafka服务后台针对新增topic创建对应的Consumer;步骤5,当Kafka服务后台接收归属于该新增topic的消息时,根据消息来源创建对应的Producer,并将消息发布到其该新增topic中;步骤6,该新增topic的Consumer监听到消息后,消费消息,产生消费数据;步骤7,Kafka服务后台保存该消费数据,并将其存储到该新增topic对应的存储表中。为了更加灵活地控制topic及其对应的数据库存储表,可以在管理页面提供新增和删除topic和对应数据库存储表的接口。显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域及相关领域的普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。本文档来自技高网...

【技术保护点】
1.一种Kafka中新增topic的消费数据自动持久化方法,其特征在于,包括以下步骤:/n步骤1,人工在Kafka服务后台提供的管理页面上创建表及配置表中字段;/n步骤2,Kafka服务后台根据管理页面上填写的表名向Kafka集群发布topic创建指令;/n步骤3,Kafka集群根据topic创建指令创建topic,数据库中自动生成对应存储表;/n步骤4,Kafka服务后台针对新增topic创建对应的Consumer;/n步骤5,当Kafka服务后台接收归属于该新增topic的消息时,根据消息来源创建对应的Producer,并将消息发布到其该新增topic中;/n步骤6,该新增topic的Consumer监听到消息后,消费消息,产生消费数据;/n步骤7,Kafka服务后台保存该消费数据,并将其存储到该新增topic对应的存储表中。/n

【技术特征摘要】
1.一种Kafka中新增topic的消费数据自动持久化方法,其特征在于,包括以下步骤:
步骤1,人工在Kafka服务后台提供的管理页面上创建表及配置表中字段;
步骤2,Kafka服务后台根据管理页面上填写的表名向Kafka集群发布topic创建指令;
步骤3,Kafka集群根据topic创建指令创建topic,数据库中自动生成对应存储表;
步骤4,Kafka服务后台针对新增topic创建对应的Consumer;
步骤5,当Kafka服务后台接收归属于该新增topic的消息时,根据消息来源创建对应的...

【专利技术属性】
技术研发人员:庞文俊陈继张长志廖开枫李小超伊晓强
申请(专利权)人:清创网御合肥科技有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1