[发明专利]基于DAG的业务处理方法、装置、服务器及存储介质有效
申请号: | 201910663151.8 | 申请日: | 2019-07-22 |
公开(公告)号: | CN112256444B | 公开(公告)日: | 2023-08-01 |
发明(设计)人: | 骆志军 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 张所明 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 dag 业务 处理 方法 装置 服务器 存储 介质 | ||
1.一种基于DAG的业务处理方法,其特征在于,所述方法包括:
根据配置文件,生成操作信息、系统版本信息及有向无环图DAG图名称之间的对应关系,所述配置文件包括生成各个DAG的配置信息,所述配置信息包括节点信息和边信息,所述DAG图包括至少一个节点,每个节点存储有在线业务逻辑,两个具有依赖关系的节点采用一条有向边连接;
预先为各个DAG中的每个节点设置第一类节点接口和第二类节点接口,所述第一类节点接口用于根据节点信息生成DAG图时被调用,所述第二类节点接口用于执行节点的在线业务时被调用;
预先为各个DAG中的每条边设置第一类边接口和第二类边接口,所述第一类边接口用于根据边信息生成DAG图时被调用,所述第二类边接口用于执行边所连接下一节点的在线业务时被调用;
获取每个DAG图名称中各个节点的节点信息和各条边的边信息;
根据每个DAG图名称中各个节点的节点信息和各条边的边信息,调用所述第一类节点接口和所述第一类边接口,将具有依赖关系的两个节点采用一条有向边进行连接,生成每个DAG图名称指示的DAG;
基于每个DAG,生成所述操作信息、系统版本信息及DAG之间的对应关系;
接收客户端发送的在线业务处理请求,所述在线业务处理请求包括登录所述客户端的用户所输入的目标操作信息和所述客户端的目标系统版本信息;
根据操作信息、系统版本信息及DAG之间的对应关系,确定所述目标操作信息和目标系统版本信息对应的目标DAG;
调用所述第二类节点接口和所述第二类边接口,执行所述目标DAG中各个节点的在线业务逻辑,以处理所述客户端所请求的在线业务。
2.根据权利要求1所述的方法,其特征在于,所述执行所述目标DAG中各个节点的在线业务逻辑,以处理所述客户端所请求的在线业务,包括:
在开始执行所述目标DAG中各个节点的在线业务逻辑时,为入度为0的节点分配一个线程,在所述入度为0的节点的在线业务逻辑执行完成时,执行入度非0的节点的在线业务逻辑。
3.根据权利要求1所述的方法,其特征在于,所述执行所述目标DAG中各个节点的在线业务逻辑,以处理所述客户端所请求的在线业务,包括:
对于任一入度非0的节点,当与所述入度非0的节点连接的每个上一节点的在线业务逻辑均执行完成时,为所述入度非0的节点分配线程,并基于所分配的线程执行所述入度非0的节点的在线业务逻辑。
4.根据权利要求1所述的方法,其特征在于,所述执行所述目标DAG中各个节点的业务逻辑,以处理所述客户端所请求的业务,包括:
对于任一节点,如果所述节点的出度为0,则在所述节点的在线业务逻辑处理完成时,流程结束;
如果所述节点的出度不为0,则在所述节点的在线业务逻辑处理完成时,为与所述节点连接的每个下一节点分配一个线程,并基于为每个下一节点所分配的线程并行执行每个下一节点的在线业务逻辑。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
预先为各个DAG中入度为0的节点设置一个前置无操作节点,并为出度为0的节点设置一个无操作节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910663151.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:MRAM阵列的测试电路
- 下一篇:一种集成灶的控制方法及集成灶