1.一种用以并发地执行计算服务的协调的方法,所述方法包括:
开发一组服务的表示,其中每个服务经由不同类型的关系与其他服务相关;
将一组依赖性规则应用于所述一组服务内的每种类型的关系,使得所述依赖性规则的所述应用创建表示所述一组服务的状态转换的步骤之间的步骤间依赖性;以及
基于所述步骤间依赖性来开发所述协调计划,所述协调计划允许非依赖的步骤的并发执行。
2.根据权利要求1所述的方法,其中所述一组服务包括至少两个非依赖的服务,并且所述方法还包括:并发地执行至少两个非依赖的步骤。
3.根据权利要求1所述的方法,其中所述开发所述协调计划包括:创建具有多个步骤的、所述服务的步骤图。
4.根据权利要求3所述的方法,还包括:如果所述步骤图包含会导致无限循环的循环性,则拒绝所述步骤图。
5.根据权利要求3所述的方法,还包括:跟踪所述多个步骤之间的依赖性。
6.根据权利要求5所述的方法,还包括:标识不具有依赖性的所述步骤,并且执行不具有依赖性的所述步骤。
7.根据权利要求1所述的方法,其中所述开发所述协调计划包括:使用tarjan算法对步骤图进行拓扑排序。
8.根据权利要求1所述的方法,其中所述将一组依赖性规则应用于每种类型的关系包括:创建具有父子关系的步骤。
9.根据权利要求1所述的方法,其中所述将一组依赖性规则应用于每种类型的关系包括:创建具有兄弟关系的步骤。
10.一种非暂态计算机可读介质,包括被存储于其上的计算机可执行指令,所述计算机可执行指令在由一个或多个处理单元执行时,执行并发地执行服务的协调计划的方法,所述非暂态计算机可读存储介质包括指令,所述指令用以:
开发一组服务的表示,其中每个服务经由不同类型的关系与其他服务相关;
将一组依赖性规则应用于所述一组服务内的每种类型的关系,使得所述依赖性规则的所述应用创建表示所述一组服务的状态转换的步骤之间的步骤间依赖性;以及
基于所述步骤间依赖性的所述创建来开发所述协调计划,所述协调计划在步骤不依赖于第二步骤的情况下允许所述步骤执行。
11.根据权利要求10所述的方法,还包括:并发地执行彼此不依赖的至少两个步骤。
12.根据权利要求10所述的方法,其中所述开发所述协调计划包括:生成具有多个步骤的步骤图。
13.根据权利要求12所述的方法,还包括:如果所述步骤图包含会导致无限循环的循环性,则拒绝所述步骤图。
14.根据权利要求12所述的方法,还包括:跟踪所述多个步骤之间的依赖性。
15.根据权利要求14所述的方法,还包括:标识不具有依赖性的所述步骤,并且执行不具有依赖性的所述步骤。
16.一种用以开发协调执行计划的系统,包括:
建模器,所述建模器将每个服务的表示开发为经由不同类型的关系与其他服务相关;
计划器,所述计划器连接到所述建模器和处理器,所述处理器将一组依赖性规则应用于每个服务和其他服务之间的每种类型的关系,并且基于所述一组依赖性规则的所述应用,创建表示每个服务的状态转换的步骤之间的步骤间依赖性,并且基于所述步骤间依赖性,开发允许非依赖的步骤的并发执行的所述协调计划。
17.根据权利要求16所述的系统,还包括执行器,所述执行器连接到所述计划器,所述执行器并发地执行非依赖的步骤。
18.根据权利要求16所述的系统,其中所述计划器获得步骤图,其中所述步骤图中的每个节点表示步骤,所述步骤表示针对不同服务的状态转换,并且使用所述步骤图来开发所述协调计划。
19.根据权利要求18所述的系统,其中所述计划器提供所述步骤图的拓扑排序,以阻止导致无限循环的循环性。
20.根据权利要求18所述的系统,还包括调度器,所述调度器跟踪多个步骤之间的依赖性。