[发明专利]一种分布式定时消息系统测试方法、装置以及设备在审
申请号: | 202211038337.2 | 申请日: | 2022-08-29 |
公开(公告)号: | CN115604164A | 公开(公告)日: | 2023-01-13 |
发明(设计)人: | 高坤 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | H04L43/50 | 分类号: | H04L43/50;H04L67/10;H04L67/51 |
代理公司: | 北京君慧知识产权代理事务所(普通合伙) 11716 | 代理人: | 肖鹏 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 定时 消息 系统 测试 方法 装置 以及 设备 | ||
1.一种分布式定时消息系统测试方法,所述系统包括消息发布客户端、消息订阅客户端、定时消息服务端,所述方法包括:
通过所述消息订阅客户端,批量发起对所述消息发布客户端可发布的定时消息的订阅;
根据所述定时消息对应的延迟时间,构造故障注入指令并发送给所述定时消息服务端,以向所述定时消息服务端注入指定类型的故障;
通过所述消息发布客户端,将所述消息订阅客户端订阅的各所述定时消息向所述定时消息服务端发布,以便所述定时消息服务端向所述消息订阅客户端投递所述定时消息;
根据所述订阅,对所述消息订阅客户端接收所述定时消息的情况进行校验,根据校验结果确定对所述系统的测试结果。
2.如权利要求1所述的方法,所述根据所述定时消息对应的延迟时间,构造故障注入指令,具体包括:
根据所述定时消息对应的延迟时间,构造对应的故障注入时间不小于所述延迟时间的故障注入指令。
3.如权利要求1所述的方法,所述系统包括由多个所述定时消息服务端构成的分布式集群;
所述向所述定时消息服务端注入指定类型的故障之后,所述方法还包括:
通过所述注入指定类型的故障,在所述分布式集群中触发:至少一个定时消息服务端新上线负责投递所述定时消息的服务,或者至少一个定时消息服务端从另一个定时消息服务端接管投递所述定时消息的服务。
4.如权利要求3所述的方法,还包括:
以所述定时消息服务端作为维度,对待投递的全部定时消息进行逻辑上的划分,得到多个分区,分配给对应的所述定时消息服务端;
所述向所述定时消息服务端注入指定类型的故障之后,所述方法还包括:
响应于所述注入的指定类型的故障,进入分区状态变迁阶段;
在所述分区状态变迁阶段,至少部分所述分区被重新分配或者切换容灾状态。
5.如权利要求4所述的方法,所述定时消息服务端向所述消息订阅客户端投递所述定时消息,还包括:
判断所述定时消息对应的延迟时间是否与所述分区状态变迁阶段相匹配;
若否,则相应地调整所述延迟时间,以强制在所述分区状态变迁阶段中尝试投递所述定时消息。
6.如权利要求3所述的方法,所述向所述定时消息服务端注入指定类型的故障之后,所述方法还包括:
将被注入所述故障的所述定时消息服务端作为第一服务端;
确定响应于所述故障,所述多个定时消息服务端中的第二服务端要从所述第一服务端接管投递所述定时消息的服务;
通过所述第一服务端,向所述第二服务端注入指定类型的故障。
7.如权利要求6所述的方法,所述第二服务端被注入的故障对应的服务妨害效果,低于所述第一服务端被注入的故障对应的服务妨害效果。
8.如权利要求3所述的方法,所述向所述定时消息服务端注入指定类型的故障之后,所述方法还包括:
判断通过所述注入指定类型的故障,是否触发了至少一个定时消息服务端从另一个定时消息服务端接管投递所述定时消息的服务;
若否,则在所述故障的注入生效时间段中插入安全时隙,在所述安全时隙,所述故障不生效,所述安全时隙的长度小于所述注入生效时间段。
9.如权利要求1所述的方法,所述向所述定时消息服务端注入指定类型的故障,具体包括:
向所述定时消息服务端注入以下至少一种类型的原子故障:
宕机、CPU飙高、磁盘打满、IO异常、内存飙高、网络包延迟重复和丢失、JVM方法级异常。
10.如权利要求1所述的方法,所述根据所述订阅,对所述消息订阅客户端接收所述定时消息的情况进行校验,具体包括:
根据所述订阅,对所述消息订阅客户端通过所述投递,接收到的定时消息的完整性和实时性进行校验,以确定所述投递受所述注入的指定类型的故障的影响。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211038337.2/1.html,转载请声明来源钻瓜专利网。