[发明专利]消息消费者切换方法、装置、存储介质及电子设备有效
申请号: | 201811333129.9 | 申请日: | 2018-11-09 |
公开(公告)号: | CN109656725B | 公开(公告)日: | 2019-12-27 |
发明(设计)人: | 刘志毅 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 11447 北京英创嘉友知识产权代理事务所(普通合伙) | 代理人: | 魏嘉熹;南毅宁 |
地址: | 100144 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据队列 通知指令 发送 读取 存储介质 电子设备 指令 数据读取请求 路径确定 重新配置 锁状态 | ||
本公开涉及一种消息消费者切换方法、装置、存储介质及电子设备,包括接收第一消息消费者发送的数据读取请求;根据所述数据队列的路径确定正在消费所述数据队列的第二消息消费者,并向所述第二消息消费者发送第一通知指令;接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令;向所述第一消息消费者发送第二通知指令,所述第二通知指令用于指示所述第一消息消费者能够开始对所述数据队列进行读取。通过上述技术方案,能够在出现新的消息消费者需要读取已经被占用的数据队列时,快速且精确地将该数据队列的消息消费者切换至该新的消息消费者,且能够避免为了该新的消息消费者重新配置新的组别的繁琐。
技术领域
本公开涉及数据处理领域,具体地,涉及一种消息消费者切换方法、装置、存储介质及电子设备。
背景技术
Flink是新一代的数据流处理计算引擎。Flink需要在高吞吐量的情况下保证exactly-once(即正好一次的消息传递),能够支持流处理和批处理两种应用类型。Flink将批处理任务看作是有限流处理任务,然后用流式执行模型执行批处理任务。Kafka作为目前非常流行的消息中间件,它不仅能够提供极大的吞吐量,还能够配合Flink在消费端达到exactly-once。它具备快速、可扩展、可持久化的特点。消息以topic形式组织,topic中分为若干个partition(数据队列)以达到分布式处理和并行处理的目的。producer向topic中写入数据,consumer(消息消费者)订阅topic并从topic中获得数据并处理。若干个consumer组合在一起形成group。一个partition只能被同一个group中的一个consumer消费,不同的group之间不会受影响。Kafka被广泛应用于流式处理中,作为流式处理的数据消费源。
对于Kafka自身,提供了两种获取数据的api(Application ProgrammingInterface,应用程序编程接口),即high-level-api和low-level-api。在使用high-level-api的情况下,用于读取kafka中消息的消息消费者(Consumer)不需要考虑消息如何分配才能保证exactly-once的问题,直接读取即可;在使用low-level-api的情况下,消息消费者可以指定消费特定数据队列(partition)的消息,并自行管理offset以灵活获取消息,其中,offset是一个连续的用于定位被追加到分区的每一个消息的序列号,即偏移量。
发明内容
本公开的目的是提供一种消息消费者切换方法、装置、存储介质及电子设备,能够在出现新的消息消费者需要读取已经被占用的数据队列时,快速且精确地将该数据队列的消息消费者切换至该新的消费者。
为了实现上述目的,本公开提供一种消息消费者切换方法,所述方法包括:
接收第一消息消费者发送的数据读取请求,所述数据读取请求中包括所述第一消息消费者所请求读取的数据队列的路径;
根据所述数据队列的路径确定正在消费所述数据队列的第二消息消费者,并向所述第二消息消费者发送第一通知指令,所述第一通知指令用于指示所述第二消息消费者停止对所述数据队列的读取;
接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令,所述第一锁状态修改指令用于将与所述数据队列所对应的锁状态修改为释放状态;
向所述第一消息消费者发送第二通知指令,所述第二通知指令包括所述数据队列的锁状态信息,所述第二通知指令用于指示所述第一消息消费者能够开始对所述数据队列进行读取。
可选地,在所述接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令之后,所述方法还包括:
接收所述第一消息消费者发送的第二锁状态修改指令并执行该指令,所述第二锁状态修改指令用于将所述锁状态修改为锁定状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811333129.9/2.html,转载请声明来源钻瓜专利网。