[发明专利]消息消费者切换方法、装置、存储介质及电子设备有效
申请号: | 201811333129.9 | 申请日: | 2018-11-09 |
公开(公告)号: | CN109656725B | 公开(公告)日: | 2019-12-27 |
发明(设计)人: | 刘志毅 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 11447 北京英创嘉友知识产权代理事务所(普通合伙) | 代理人: | 魏嘉熹;南毅宁 |
地址: | 100144 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据队列 通知指令 发送 读取 存储介质 电子设备 指令 数据读取请求 路径确定 重新配置 锁状态 | ||
1.一种消息消费者切换方法,其特征在于,所述方法包括:
接收第一消息消费者发送的数据读取请求,所述数据读取请求中包括所述第一消息消费者所请求读取的数据队列的路径;
根据所述数据队列的路径确定正在消费所述数据队列的第二消息消费者,并向所述第二消息消费者发送第一通知指令,所述第一通知指令用于指示所述第二消息消费者停止对所述数据队列的读取;
接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令,所述第一锁状态修改指令用于将与所述数据队列所对应的锁状态修改为释放状态;
向所述第一消息消费者发送第二通知指令,所述第二通知指令包括所述数据队列的锁状态信息,所述第二通知指令用于指示所述第一消息消费者能够开始对所述数据队列进行读取。
2.根据权利要求1所述的方法,其特征在于,在所述接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令之后,所述方法还包括:
接收所述第一消息消费者发送的第二锁状态修改指令并执行该指令,所述第二锁状态修改指令用于将所述锁状态修改为锁定状态。
3.根据权利要求1所述的方法,其特征在于,所述数据读取请求中还包括第一数据请求状态修改指令,所述第一数据请求状态修改指令用于将与所述数据队列所对应的数据请求状态修改为请求中状态,并触发所述根据所述数据队列的路径确定正在消费所述数据队列的第二消息消费者,并向所述第二消息消费者发送第一通知指令的步骤,其中,所述数据请求状态用于表征所述数据队列是否有消息消费者请求读取;
所述方法还包括:当发送所述第一数据请求状态修改指令的所述第一消息消费者为预设消费者时,执行所述第一数据请求状态修改指令。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括接收所述第二消息消费者发送的第二数据请求状态修改指令,并执行所述第二数据请求状态修改指令,所述第二数据请求状态修改指令用于将与所述数据队列所对应的数据请求状态修改为无请求状态。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第一消息消费者和所述第二消息消费者中的一者发送的与所述数据队列所对应的目标偏移量,并将所述数据队列所对应的当前偏移量更新为所述目标偏移量;
向所述第一消息消费者和所述第二消息消费者中的另一者发送所述目标偏移量。
6.根据权利要求1所述的方法,其特征在于,在所述向所述第一消息消费者发送第二通知指令之后,所述方法还包括:
接收所述第一消息消费者发送的数据读取停止请求;
向所述第二消息消费者发送第三通知指令,所述第三通知指令用于指示所述第二消息消费者能够恢复对所述数据队列的读取。
7.根据权利要求6所述的方法,其特征在于,所述数据读取停止请求中还包括第三锁状态修改指令,用于将所述锁状态修改为释放状态,并触发所述向所述第二消息消费者发送第三通知指令的步骤;
所述方法还包括接收所述第一消息消费者发送的所述第三锁状态修改指令并执行该指令;和/或
接收所述第二消息消费者发送的第四锁状态修改指令并执行该指令,所述第四锁状态修改指令用于将所述锁状态修改为锁定状态。
8.一种消息消费者切换装置,其特征在于,所述装置包括:
第一接收模块,用于接收第一消息消费者发送的数据读取请求,所述数据读取请求中包括所述第一消息消费者所请求读取的数据队列的路径;
第一发送模块,用于根据所述数据队列的路径确定正在消费所述数据队列的第二消息消费者,并向所述第二消息消费者发送第一通知指令,所述第一通知指令用于指示所述第二消息消费者停止对所述数据队列的读取;
第二接收模块,用于接收所述第二消息消费者发送的第一锁状态修改指令并执行该指令,所述第一锁状态修改指令用于将与所述数据队列所对应的锁状态修改为释放状态;
第二发送模块,用于向所述第一消息消费者发送第二通知指令,所述第二通知指令包括所述数据队列的锁状态信息,所述第二通知指令用于指示所述第一消息消费者开始对所述数据队列进行读取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811333129.9/1.html,转载请声明来源钻瓜专利网。