[发明专利]一种基于Kafka的同步消息服务系统及实现方法有效
| 申请号: | 202010227547.0 | 申请日: | 2020-03-26 |
| 公开(公告)号: | CN111555957B | 公开(公告)日: | 2022-08-19 |
| 发明(设计)人: | 陈剑;刘航 | 申请(专利权)人: | 孩子王儿童用品股份有限公司 |
| 主分类号: | H04L51/00 | 分类号: | H04L51/00;H04L7/00;H04L9/40;H04L67/55;H04L67/56;H04L67/10 |
| 代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
| 地址: | 210000 江苏省*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 kafka 同步 消息 服务 系统 实现 方法 | ||
本发明公开一种基于Kafka的同步消息服务系统及实现方法,系统包括:主题管理模块,为主题分配具体的生产者代理服务节点和Cache节点,为每个主题分配唯一的密钥标识,提供主题和密钥的认证服务;消费管理模块,对消费组进行约束,为消费组分配具体的消费者代理服务节点,并为每个消费组分配唯一的密钥标识,提供消费组和接入密钥的认证服务;生产者代理模块,将分组后消息写入本地队列和Cache队列,批量将队列消息同步发送到Kafka,由核心守护线程与Kafka集群进行交互;以及,消费者代理模块,负责消费主题消息并做权限认证。此种技术方案可解决消息发送的顺序、消息消费的重复等问题,消息服务效果好。
技术领域
本发明属于计算机技术领域,特别涉及一种基于Kafka集群的同步消息服务系统及实现方法。
背景技术
Kafka服务是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据,这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。但是Kafka服务通常情况下是异步发送消息的,不能保证顺序性,且由于Kafka技术复杂度,会引起重复消费问题,应用场景主要集中在日志类数据采集或者大数据领域等非核心交易业务,若将Kafka消息服务用于订单交易领域,需要解决消息发送的顺序、消息消费的重复等问题,另外,延时消息作为消息服务不可或缺的重要组成部分,Kafka并不支持,针对这些问题,目前并没有相对成熟的解决方案。
发明内容
本发明的目的,在于提供一种基于Kafka的同步消息服务系统及实现方法,其可解决消息发送的顺序、消息消费的重复等问题,消息服务效果好。
为了达成上述目的,本发明的解决方案是:
一种基于Kafka的同步消息服务系统,包括:
主题管理模块,用于申请创建主题,为主题分配具体的生产者代理服务节点和Cache节点,为每个主题分配唯一的密钥标识,提供主题和密钥的认证服务;
消费管理模块,用于申请创建消费组,对消费组进行约束,为消费组分配具体的消费者代理服务节点,并为每个消费组分配唯一的密钥标识,提供消费组和接入密钥的认证服务;
生产者代理模块,用于接收主题消息,接收到消息时,首先进行主题权限认证,认证通过后,为每个消息生成唯一的消息ID,并对消息key进行hash分组,将分组后消息写入本地队列和Cache队列,并验证是否写入成功;写入成功后,客户端响应成功,同时启动一个核心守护线程,批量将队列消息同步发送到Kafka,由核心守护线程与Kafka集群进行交互;如果接受到消息,守护线程就会不停的发送消息到Kafka,直到用户线程退出了,守护线程才会退出;以及,
消费者代理模块,负责消费主题消息并做权限认证,消费消息时,记录历史消息ID,并基于历史消息ID对后续的消息进行处理。
上述生产者代理模块中,核心守护线程按照先进先出的顺序从本地队列中取出消息串行发送到Kafka。
上述生产者代理模块中,如果接收到消息,核心守护线程会不停地发送消息到Kafka,直到用户线程退出,核心守护线程才会退出。
上述系统还包括延时消息模块,延时消息模块内设置有调度主题,接收的延时消息首先转发调度主题,同时启动时间调度器对延时消息进行调度,触发调度时间时,将延时消息投递到目标主题。
一种基于Kafka的同步消息实现方法,包括将主题消息发送至Kafka集群和从Kafka集群消费主题消息;
将主题消息发送至Kafka集群包括如下步骤:
步骤A1,创建主题,并为其分配具体的生产者代理服务节点和Cache节点,以及唯一的密钥标识;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于孩子王儿童用品股份有限公司,未经孩子王儿童用品股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010227547.0/2.html,转载请声明来源钻瓜专利网。





