[发明专利]偏移量处理方法、装置、电子设备及计算机可读存储介质在审
申请号: | 202010618284.6 | 申请日: | 2020-07-01 |
公开(公告)号: | CN111897662A | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 张兆龙 | 申请(专利权)人: | 中国建设银行股份有限公司;建信金融科技有限责任公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 偏移 处理 方法 装置 电子设备 计算机 可读 存储 介质 | ||
本申请实施例提供了一种偏移量处理方法、装置、电子设备及计算机可读存储介质。该方法包括:当从Kafka消息队列中获取到当前批次的目标消息时,对目标消息进行处理;在完成对目标消息的处理后,将目标消息在Kafka消息队列中对应的目标偏移量发送给偏移量存储服务器,以使偏移量存储服务器存储目标偏移量。基于本方案,通过将当前批次中的目标信息对应的目标偏移量进行存储,为在客户端由于发生异常情况关闭时,从Kafka消息队列中的重新获取消息批次中的目标消息提供了基础,能够实现从断点续传,有利于维护业务的连续性。
技术领域
本申请涉及通信技术领域,具体而言,本申请涉及一种偏移量处理方法、装置、电子设备及计算机可读存储介质。
背景技术
Kafka是一个分布式的消息队列系统,Kafka系统中服务端可以将消息存储至消息队列中,客户端可以从服务端拉取消息队列中的消息并进行处理。客户端在获取消息队列中的消息时,可以根据当前偏移量确定消息队列的起始位置,由消息队列中的该起始位置拉取消息。
目前,客户端会在当前批次的消息处理完成后向服务端发送下次获取消息时的当前偏移量,以便进行下一次消息的获取。但如果在在当前批次的消息处理完成之前,客户端由于某些异常情况发生关闭,当客户端再次启动后,只能根据上次发送给服务端的起始位置从队列中拉取新的消息,无法实现断点续传,影响业务的连续性。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一。本申请所采用的技术方案如下:
第一方面,本申请实施例提供了一种偏移量处理方法,该方法包括:
当从Kafka消息队列中获取到当前批次的目标消息时,对目标消息进行处理;
在完成对目标消息的处理后,将目标消息在Kafka消息队列中对应的目标偏移量发送给偏移量存储服务器,以使偏移量存储服务器存储目标偏移量。
可选地,上述方法还包括:
当进行断点续传操作时,从偏移量存储服务器获取目标偏移量;
基于目标偏移量从Kafka消息队列中获取消息。
可选地,上述方法还包括:
当接收到回退指令时,从存储服务器获取当前的目标偏移量的前一次目标偏移量;
基于前一次前偏移量从Kafka消息队列中获取消息。
可选地,将目标偏移量发送给偏移量存储服务器,以使偏移量存储服务器存储目标偏移量,包括:
将目标偏移量以及对应的分区信息发送给偏移量存储服务器,以使偏移量存储服务器基于分区信息存储目标偏移量。
可选地,偏移量存储服务器为zookeeper服务器。
第二方面,本申请实施例提供了一种偏移量处理装置,该装置包括:
消息处理模块,用于在从Kafka消息队列中获取到当前批次的目标消息时,对目标消息进行处理;
偏移量发送模块,用于在完成对目标消息的处理后,将目标偏移量发送给偏移量存储服务器,以使偏移量存储服务器存储目标偏移量。
可选地,上述装置还包括:断点续传模块,断点续传模块用于:
当进行断点续传操作时,从偏移量存储服务器获取目标偏移量;
基于目标偏移量从Kafka消息队列中获取消息。
可选地,上述装置还包括:回退模块,回退模块用于:
当接收到回退指令时,从存储服务器获取当前的目标偏移量的前一次目标偏移量;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国建设银行股份有限公司;建信金融科技有限责任公司,未经中国建设银行股份有限公司;建信金融科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010618284.6/2.html,转载请声明来源钻瓜专利网。