[发明专利]服务状态的同步方法、装置及服务器有效
| 申请号: | 202210117635.4 | 申请日: | 2022-02-08 |
| 公开(公告)号: | CN114172821B | 公开(公告)日: | 2022-05-24 |
| 发明(设计)人: | 徐晓旻;陈垚亮;黄胜 | 申请(专利权)人: | 树根互联股份有限公司 |
| 主分类号: | H04L41/5041 | 分类号: | H04L41/5041;H04L67/1095 |
| 代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 唐民 |
| 地址: | 510000 广东省广州市*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 服务 状态 同步 方法 装置 服务器 | ||
1.一种服务状态的同步方法,其特征在于,所述服务状态的同步方法包括:
通过主节点的请求拦截器按照预设拦截规则从多个服务请求中确定协同服务请求,并拦截所述协同服务请求;
在所述主节点执行所述协同服务请求成功时,通过所述请求拦截器将所述协同服务请求的服务调用参数转换为抽象请求描述,将所述抽象请求描述上传至消息中间件的请求成功主题中;
通过从节点的请求执行器从所述请求成功主题读取目标抽象请求描述,对所述目标抽象请求描述进行解析,得到目标服务调用接口参数,根据所述目标服务调用接口参数执行所述协同服务请求;
在所述从节点的请求执行器执行所述协同服务请求失败时,通过所述请求执行器向所述消息中间件的请求失败主题发送所述从节点的请求处理状态;
通过所述请求执行器根据所述目标服务调用接口参数重新执行所述协同服务请求,直至所述请求执行器执行所述协同服务请求成功。
2.根据权利要求1所述的服务状态的同步方法,其特征在于,所述服务状态的同步方法还包括:
在所述请求执行器执行所述协同服务请求成功时,向所述消息中间件的请求失败主题发送状态更新消息,将所述请求失败主题对应的请求处理状态标记为成功。
3.根据权利要求1所述的服务状态的同步方法,其特征在于,所述预设拦截规则包括白名单列表、目标服务类型、请求服务接口路径、例外路径、服务接口请求方法;
所述通过所述主节点的请求拦截器按照预设拦截规则从多个服务请求中确定协同服务请求,包括:
判断各所述服务请求的服务调用参数是否与所述白名单列表、所述目标服务类型、所述请求服务接口路径、所述例外路径、所述服务接口请求方法相匹配;
将服务调用参数与所述白名单列表、所述目标服务类型、所述请求服务接口路径、所述例外路径、所述服务接口请求方法相匹配的服务请求确定为协同服务请求。
4.根据权利要求1所述的服务状态的同步方法,其特征在于,所述抽象请求描述包括请求唯一ID、目标服务类型、目标服务接口、查询请求参数、请求头参数、请求体参数、接口请求参数;
所述服务调用参数包括请求全路径、请求体和请求头;
所述通过所述请求拦截器将所述协同服务请求的服务调用参数转换为抽象请求描述,包括:
通过所述请求拦截器将所述请求体进行解析,得到所述目标服务接口、所述查询请求参数、所述接口请求参数;
通过所述请求拦截器将所述请求头进行解析,得到所述请求唯一ID和所述请求头参数;
通过所述请求拦截器将所述请求全路径进行解析,得到所述目标服务类型。
5.根据权利要求2所述的服务状态的同步方法,其特征在于,所述请求处理状态包括:请求唯一ID,同步执行所述协同服务请求的数据中心ID,从节点同步执行所述协同服务请求的执行结果,处理时间戳,所述将所述请求失败主题对应的请求处理状态标记为成功,包括:
将所述请求处理状态中的所述执行结果更新为执行成功。
6.根据权利要求1所述的服务状态的同步方法,其特征在于,所述服务状态的同步方法还包括:
通过所述主节点的同步请求监控器从所述消息中间件读取所述请求成功主题的抽象请求描述和所述请求失败主题的请求处理状态;
将读取到的抽象请求描述和请求处理状态存入数据库中。
7.根据权利要求6所述的服务状态的同步方法,其特征在于,所述服务状态的同步方法还包括:
通过所述请求拦截器向客户端发送通知消息,所述通知消息为用于指示所述主节点执行所述协同服务请求成功的消息;
通过所述同步请求监控器确定所述协同服务请求在所述主节点和各从节点的执行成功状态或执行失败状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于树根互联股份有限公司,未经树根互联股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210117635.4/1.html,转载请声明来源钻瓜专利网。





