[发明专利]业务链路交叉的执行方法及装置和电子设备有效
申请号: | 201911033474.5 | 申请日: | 2019-10-28 |
公开(公告)号: | CN110838976B | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 郑淇公 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | H04L12/707 | 分类号: | H04L12/707;H04L12/725 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 周嗣勇 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 业务 交叉 执行 方法 装置 电子设备 | ||
1.一种业务链路交叉的执行方法,所述方法包括:
获取待执行的多条业务链路以及所述多条业务链路之间交叉节点的映射关系;其中,所述业务链路由若干串联的节点构成,所述交叉节点为不同业务链路中同一发起方对应的节点;
创建用于记录节点执行顺序的链表,根据设定的排序规则遍历所述多条业务链路的节点,得出所述多条业务链路中节点之间的全局执行顺序;
按照所述链表中各链块的先后顺序依次执行所述链块;其中,在所述链块内记录的节点存在多个时,采用并行方式执行同一链块内的多个节点。
2.根据权利要求1所述的方法,所述排序规则,具体包括:
针对每条业务链路设定P为1,i为1;其中,所述P表示链表中第P个链块;所述i表示业务链路中第i个节点;
判断第i个节点是否为交叉节点;
如果第i个节点不是交叉节点,进一步判断链表是否为空;
如果链表为空,则在链表中创建一个V链块,并将第i个节点加入该创建的V链块;以及令P+1,i+1。
3.根据权利要求2所述的方法,所述排序规则还包括:
如果链表不为空,进一步判断P是否为1;
如果第P为1,进一步判断第P个链块是否为V链块;
如果第P个链块为V链块,则将第i个节点加入该V链块;以及令P+1,i+1。
4.根据权利要求3所述的方法,所述排序规则还包括:
如果第P个链路不为V链块,则在第P个链块之后创建一个V链块,将第i个节点加入该创建的V链块;以及令P+1,i+1。
5.根据权利要求3所述的方法,所述排序规则还包括:
如果P不为1,进一步判断第P-1个链块是否为V链块;
如果第P-1个链块是V链块,则将第i个节点加入该V链块;以及令i+1。
6.根据权利要求5所述的方法,所述排序规则还包括:
如果第P-1个链块不是V链块,进一步判断第P个链块是否存在;
如果第P个链块不存在,则在创建第P个链块为V链块,将第i个节点加入该创建的V链块;以及令P+1,i+1。
7.根据权利要求6所述的方法,所述排序规则还包括:
如果第P个链块存在,进一步判断第P个链块是否为V链块;
如果第P个链块为V链块,则将第i个节点加入该创建的V链块;以及令P+1,i+1。
8.根据权利要求7所述的方法,所述排序规则还包括:
如果第P个链块不为V链块,则在第P个链块之前创建1个V链块,将第i个节点加入该创建的V链块;以及令P+1,i+1。
9.根据权利要求2所述的方法,所述排序规则还包括:
如果第i个节点为交叉节点,进一步判断链表是否为空;
如果链表为空,则在链表中创建1个T链块(即产生第1个链块),将第i个节点加入该T链块;建立第i个节点与该T链块的对应关系;以及令P+1,i+1。
10.根据权利要求9所述的方法,所述排序规则还包括:
如果链表不为空,进一步判断与第i个节点存在映射关系的节点是否加入某个T链块;
如果与第i个节点存在映射关系的节点都没有加入T链块,则在第P个链块之前创建T链块,将第i个节点加入该T链块;建立第i个节点与该T链块的对应关系;以及令P+1,i+1。
11.根据权利要求10所述的方法,所述排序规则还包括:
如果与第i个节点存在映射关系的节点加入T链块,则确定与第i个节点存在映射关系的节点加入的目标T链块,将第i个节点加入该目标T链块;建立第i个节点与该目标T链块的对应关系;以及令P=目标T链块P+1,i+1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911033474.5/1.html,转载请声明来源钻瓜专利网。