[发明专利]一种可扩展的异步服务mock方法在审
申请号: | 202110703122.7 | 申请日: | 2021-06-24 |
公开(公告)号: | CN113535351A | 公开(公告)日: | 2021-10-22 |
发明(设计)人: | 张哈;雷望 | 申请(专利权)人: | 四川新网银行股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 成都智言知识产权代理有限公司 51282 | 代理人: | 胡文莉 |
地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩展 异步 服务 mock 方法 | ||
本发明公开了一种可扩展的异步服务mock方法,属于信息技术服务领域,通过请求报文判断是否需要路由到挡板服务;挡板服务同步响应业务系统,组装回调参数,并将把组装好的回调参数发给消息队列;回调服务从消息队列获取并解析回调消息,判断解析结果是否满足回调条件,如不满足进入等待状态,如果条件满足,向被回调服务发送回调请求,实现业务系统回调;记录调用结果并可视化展示回调链路。解决了现有技术中只支持基于Http/Https的接口回调,并且回调参数只能使用请求参数内容直接生成,回调过程也不可见,无法设置回调优先级,无法设置回调触发条件等问题,其目的在于,完成异步回调场景的mock,实现无人值守联调,降低了人力成本,提高多系统联调的测试效率。
技术领域
本发明属于信息技术服务领域,具体涉及一种可扩展的异步服务mock方法。
背景技术
异步服务是跟同步服务相对应的,发送一个请求,等待返回,然后再发送下一个请求就是同步服务,发送一个请求,不等待返回,随时可以再发送下一个请求就是异步服务,在真实的测试场景中含有大量异步的场景是通过异步服务来实现的,比如经典的支付场景,发送了一个支付请求出去,并不是一定要等到真正支付成功才返回结果。
现有异步回调服务方案由于未解耦异步调用的发起方和处理方,所以只支持基于Http/Https的接口回调,并且还存在回调参数只能使用请求参数内容直接生成,回调过程也不可见,无法设置回调优先级,无法设置回调触发条件等问题。
发明内容
本发明公开了一种可扩展的异步服务mock方法,用以解决上述现有技术中的存在的问题。
本发明采用的技术方案如下:
一种可扩展的异步服务mock方法,具体包括以下步骤:
步骤1:通过请求报文判断是否需要路由到挡板服务,实现了由请求发起方动态控制走挡板服务还是真实服务;
步骤2:挡板服务同步响应业务系统,组装回调参数,并将把组装好的回调参数发给消息队列,实现了同步响应异步处理,实现了多种回调参数的组装;
步骤3:回调服务从消息队列获取并解析回调消息,判断解析结果是否满足回调条件,如不满足进入等待状态,如果条件满足,向被回调服务发送回调请求,实现业务系统回调,实现了回调服务的优先级设置、间隔时间的设置、回调触发条件的设置;
步骤4:记录调用结果并可视化展示回调链路,通过对日志的收集和分析,将回调过程进行可视化展示,极大提高了问题排查的效率。
所述步骤1具体包括:
步骤1.1:业务系统发起请求,请求内容为SOFA、dubbo、http、socket、mq、rpc等多种类型的异步回调服务;
步骤1.2:微服务控制台判断请求是否带有mock标识;
步骤1.3:将请求中无mock标识的业务请求路由到真实服务;
步骤1.4:将请求中有mock标识的业务请求路由到挡板服务。
所述步骤2具体包括:
步骤2.1:挡板服务根据请求特征从数据库中获取预设的响应模版;
步骤2.2:挡板服务解析响应模板,获取同步响应报文脚本,回调初始脚本,外部服务调用脚本;
步骤2.3:挡板服务根据获取到的同步响应脚本对业务系统发起同步响应;
步骤2.4:挡板服务判断响应模板中是否包含外部服务调用脚本,如果包含则通过外部服务调用脚本发起外部请求,获取外部参数,如入不包含则跳过该步骤;
步骤2.5:挡板服务根据回调初始脚本、挡板服务接收到的业务请求、外部参数完成回调参数的组装;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110703122.7/2.html,转载请声明来源钻瓜专利网。