数据协同处理方法、装置和计算机设备与流程

文档序号:32998933发布日期:2023-01-18 00:43阅读:34来源:国知局
数据协同处理方法、装置和计算机设备与流程

1.本技术涉及计算机技术领域,具体而言,涉及一种数据协同处理方法、装置和计算机设备。


背景技术:

2.随着计算机技术的发展,人们可以利用计算机设备进行各种各样的数据处理,这样,可以极大地提升人们的工作效率。
3.相关技术中,经常会遇到需要不同部门的技术人员协同处理一些数据的情况,比如,可以由开发部门的技术人员开发出多个用于实现具体操作的功能模块,由数据采集部门的技术人员采集相应的待处理数据然后由编辑部门的技术人员根据实际的需要为各功能模块输入相应的参数并将不同的功能模块封装成一个流程脚本,并在相应的程序上运行流程脚本对待处理数据进行处理,再由运维部门的技术人员对处理后的数据进行检验或对流程脚本进行修复。另外,由于涉及到多个不同部门,就需要在各个部门的技术人员之间相互传输各种数据、脚本或模块等,这样,才能确保能正常完成数据处理的工作。
4.然而,相关技术的方案中,由于需要多个部门的技术人员相互传输数据、脚本或模块,这就存在数据丢失或模块损坏的风险,并且,若数据、脚本或模块发生变动,其他部门的技术人员也无法及时获取到变动后的数据、脚本或模块。因此,相关技术的方案存在稳定性较差、效率较低的问题。


技术实现要素:

5.本技术的目的在于提供一种数据协同处理方法、装置和计算机设备,可以达到提高数据协同处理的稳定性和效率的效果。
6.本技术的实施例是这样实现的:
7.本技术实施例的第一方面,提供一种数据协同处理方法,应用于服务器,所述方法包括:
8.获取至少一个第一终端设备发送的待处理数据;
9.根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,其中,各所述处理模块分别用于执行一种或多种业务操作;
10.获取至少一个第三终端设备发送的配置信息,所述配置信息用于指示所述处理模块与所述待处理数据之间、所述处理模块与其他处理模块之间的关联信息以及所述处理模块的执行参数;
11.基于各所述配置信息和各所述处理模块生成流程实例,所述流程实例用于指示需要调用的所述待处理数据以及所述处理模块需要对所述待处理数据进行的业务操作;
12.执行所述流程实例,输出所述流程实例执行后的执行结果数据。
13.本技术实施例的第二方面,提供了一种数据协同处理装置,应用于服务器,所述装置包括:
14.第一获取模块,用于获取至少一个第一终端设备发送的待处理数据;
15.第二获取模块,用于根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,其中,各所述处理模块分别用于执行一种或多种业务操作;
16.第三获取模块,用于获取至少一个第三终端设备发送的配置信息,所述配置信息用于指示所述处理模块与所述待处理数据之间、所述处理模块与其他处理模块之间的关联信息以及所述处理模块的执行参数;
17.生成模块,用于基于各所述配置信息和各所述处理模块生成流程实例,所述流程实例用于指示需要调用的所述待处理数据以及所述处理模块需要对所述待处理数据进行的业务操作;
18.执行输出模块,用于执行所述流程实例,输出所述流程实例执行后的执行结果数据。
19.本技术实施例的第三方面,提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述第一方面所述的数据协同处理方法。
20.本技术实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的数据协同处理方法。
21.本技术实施例的有益效果包括:
22.本技术实施例提供的一种数据协同处理方法,通过通过获取至少一个第一终端设备发送的待处理数据,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,获取至少一个第三终端设备发送的配置信息,基于各配置信息和各处理模块生成流程实例,执行该流程实例,输出该流程实例执行后的执行结果数据。
23.其中,由于该待处理数据、该处理模块的信息、该配置信息可以分别是由不同部门的技术人员操作不同的终端设备采集、编写、输入的,那么,获取至少一个第一终端设备发送的待处理数据,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,获取至少一个第三终端设备发送的配置信息,这样就可以使得该服务器获取到由不同部门的技术人员或由不同技术人员发送的该待处理数据、该处理模块的信息、该配置信息,并且可以使得该服务器确定出需要通过调用哪些处理模块来对哪些待输出数据进行何种业务操作,以实现多部门进行数据协同处理的目的。
24.基于各配置信息和各处理模块生成流程实例,由于该流程实例是根据各配置信息和各处理模块生成的,那么该流程实例用于指示需要调用的该待处理数据、需要调用的处理模块以及该处理模块需要对该待处理数据进行的业务操作,这样,该服务器就可以准确地确定出需要对各待处理数据进行的处理,进而可以提高数据协同处理的可靠性和准确性。
25.执行该流程实例,输出该流程实例执行后的执行结果数据,执行该流程实例可以是指按照执行各处理模块的顺序,依次执行各处理模块,并在执行各处理模块时调用与各处理模块存在关联关系的待处理数据,以便通过各处理模块对各待处理数据进行相应的业务操作。并且,由于各处理模块之间也是存在关联关系的,还可以在执行任一处理模块时调用其他处理模块的输出作为这任一处理模块的输入,还可以在执行完任一处理模块之后,
将这任一处理模块的输出作为其他处理模块的输入。这样,就可以实现对数据进行准确、可靠地处理的目的。
26.由于该服务器可以直接通过各第一终端设备、各第二终端设备、各第三终端设备得到由多部门的技术人员或多个技术人员采集、编写、输入的该待处理数据、该处理模块的信息、该配置信息,也就是说,多部门的技术人员或多个技术人员可以只需要将自己负责的数据、信息或模块发送到该服务器,即可由该服务器实现对各待处理数据的协同处理,这样就不需要各技术人员相互该待处理数据、该处理模块的信息和/或该配置信息,这样就可以避免出现数据丢失或模块损坏的情况。
27.并且,在该待处理数据、该处理模块的信息和/或该配置信息发生变动的情况下,相应的技术人员可以直接通过其操作的第一终端设备、第二终端设备或第三终端设备将更新后的该待处理数据、该处理模块的信息和/或该配置信息发送到该服务器,这样,就可以提高更新该待处理数据、该处理模块的信息和/或该配置信息的效率。
28.如此,可以达到提高数据协同处理的稳定性和效率的效果,另外,还可以提高数据协同处理的可靠性和准确性。
附图说明
29.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
30.图1为本技术实施例提供的一种数据协同处理系统的结构示意图;
31.图2为本技术实施例提供的第一种数据协同处理方法的流程图;
32.图3为本技术实施例提供的第二种数据协同处理方法的流程图;
33.图4为本技术实施例提供的第三种数据协同处理方法的流程图;
34.图5为本技术实施例提供的第四种数据协同处理方法的流程图;
35.图6为本技术实施例提供的第五种数据协同处理方法的流程图;
36.图7为本技术实施例提供的第六种数据协同处理方法的流程图;
37.图8为本技术实施例提供的第七种数据协同处理方法的流程图;
38.图9为本技术实施例提供的第八种数据协同处理方法的流程图;
39.图10为本技术实施例提供的一种数据协同处理装置的结构示意图;
40.图11为本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
41.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
42.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通
技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
43.在相关技术中,经常会遇到需要不同部门的技术人员协同处理一些数据的情况,比如,可以由开发部门的技术人员开发出多个用于实现具体操作的功能模块,由数据采集部门的技术人员采集相应的待处理数据然后由编辑部门的技术人员根据实际的需要为各功能模块输入相应的参数并将不同的功能模块封装成一个流程脚本,并在相应的程序上运行流程脚本对待处理数据进行处理,再由运维部门的技术人员对处理后的数据进行检验或对流程脚本进行修复。另外,由于涉及到多个不同部门,就需要在各个部门的技术人员之间相互传输各种数据、脚本或模块等,这样,才能确保能正常完成数据处理的工作。
44.然而,相关技术的方案中,由于需要多个部门的技术人员相互传输数据、脚本或模块,这就存在数据丢失或模块损坏的风险,并且,若数据、脚本或模块发生变动,其他部门的技术人员也无法及时获取到变动后的数据、脚本或模块。因此,相关技术的方案存在稳定性较差、效率较低的问题。
45.另外,由于在进行一些特殊的数据处理时,需要用到特定的软件,比如maya、3d max等软件,那么在需要进行多部门的技术人员协同处理的情况下,就需要在每个技术人员操作的终端设备上都安装上这些特定的软件,这就会导致进行数据协同处理的成本较高、占用的硬件资源较多的问题。
46.为此,本技术实施例提供了数据协同处理方法,通过获取至少一个第一终端设备发送的待处理数据,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,获取至少一个第三终端设备发送的配置信息,基于各配置信息和各处理模块生成流程实例,执行该流程实例,输出该流程实例执行后的执行结果数据,可以达到提高数据协同处理的稳定性和效率的效果。
47.本技术实施例以应用在服务器中的数据协同处理方法为例进行说明。但不表明本技术实施例仅能应用于服务器中进行数据协同处理。
48.图1是本技术实施例提供的一种数据协同处理系统的结构示意图,参见图1,该数据协同处理系统可以包括服务器a、至少一个第一终端设备b、至少一个第二终端设备c以及至少一个第三终端设备d。
49.其中,各第一终端设备b、各第二终端设备c、各第三终端设备d可以分别与服务器a通信连接,以向服务器a发送相应的数据、文件、代码、指令等,或者接收服务器a发送的相应的数据、文件、代码、指令等。
50.可选地,服务器a可以是任意一个具有处理、存储、通信等功能的服务器,服务器a上也可以部署任意应用程序,服务器a上还可以存储各种各样的数据或文件,本技术实施例对此不做限定。
51.各第一终端设备b、各第二终端设备c、各第三终端设备d分别可以由不同部门的技术人员操作,也可以由同一部门的不同技术人员操作。
52.各终端设备可以是电脑、智能手机、平板电脑或其他带有通信和处理功能的电子设备,本技术实施例对此不做限定。
53.另外,各第一终端设备b、各第二终端设备c、各第三终端设备d之间也可以相互通信连接,本技术实施例对此不做限定。
54.一种可能的方式,该数据协同处理系统中还可以包括至少一个第四终端设备,各第四终端设备也可以与服务器a、各第一终端设备b、各第二终端设备c和/或各第三终端设备d进行通信连接,本技术实施例对此不做限定。
55.示例性地,在本技术实施例中,假设需要开发部门的技术人员、数据采集部门的技术人员、编辑部门的技术人员、运维部门的技术人员一起进行数据的协同处理,那么,就可以各第一终端设备b就可以是由数据采集部门的技术人员操作的设备,各第二终端设备c就可以是由开发部门的技术人员操作的设备,各第三终端设备d就可以是由编辑部门的技术人员操作的设备,各第四终端设备就可以是由运维部门的技术人员操作的设备,本技术实施例对此不做限定。
56.需要说明的是,本技术实施例提供的如图1示出的数据协同处理系统的结构仅仅是为了对本技术实施例提供的数据协同处理方法的应用场景进行说明,并不代表本技术实施例提供的数据协同处理方法仅能应用在如图1所示的数据协同处理系统中,本技术实施例对此不做限定。
57.下面对本技术实施例提供的数据协同处理方法进行详细地解释说明。
58.图2为本技术提供的一种数据协同处理方法的流程图,该方法可以应用于任一服务器,该服务器可以是上述的服务器a,本技术实施例对此不做限定。参见图2,本技术实施例提供一种数据协同处理方法,包括:
59.步骤1001:获取至少一个第一终端设备发送的待处理数据。
60.可选地,各第一终端设备可以是上述的第一终端设备b。各第一终端设备的数量可以是一个,也可以是多个,具体可以根据进行数据协同处理的技术人员的数量确定,一般地,每个技术人员可以分别操作一台终端设备,本技术实施例对此不作限定。
61.可选地,该待处理数据可以是任意需要由多个技术人员进行协同处理的数据,比如,该待处理数据可以是动作数据、动画数据、蒙皮数据、骨骼数据等,本技术实施例对此不作限定。
62.该待处理数据的数量可以是一个也可以是多个,具体可以是由相关技术人员根据实际需要设置的。
63.示例性地,假设该待处理数据为人体动作数据,那么就可以由数据采集部门的技术人员在动捕房中使用相应的动作追踪设备、摄像设备以及其他可能的设备提前录制好需要的人体动作数据,然后将该人体动作数据传输或存储在各第一终端设备中,再由数据采集部门的技术人员通过触发各第一终端设备以将该人体动作数据发送给该服务器,本技术实施例对此不作限定。
64.值得注意的是,该服务器可以在需要进行数据协同处理时才接收各第一终端设备发送的该待处理数据,也可以实时接收该待处理数据。另外,在各第一终端设备将该待处理数据发送给该服务器,且该服务器接收到该待处理数据之后,该服务器可以将该待处理数据存储在相应的数据库或磁盘中,然后在需要进行数据协同处理时,直接从相应的数据库或磁盘中获取各第一终端设备发送的该待处理数据。
65.值得说明的是,由于各第一终端设备的数量可以是一个或多个,而每一台第一终端设备发送的待处理数据的数量也可以是一个或多个,那么,在获取至少一个第一终端设备发送的待处理数据时,就可以是指由该服务器分别接收多个第一终端设备发送的一个待
处理数据,也可以是指由该服务器分别接收多个第一终端设备发送的多个待处理数据,还可以是指由该服务器接收一个第一终端设备发送的一个或多个待处理数据,本技术实施例对此不作限定。
66.通过获取各第一终端设备发送的待处理数据,该服务器就可以获取到由数据采集部门的技术人员采集到的待处理数据。这样,该服务器就可以获取到需要进行数据协同处理的待处理数据,便于执行后续针对该待处理数据进行的操作。
67.步骤1002:根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块。
68.可选地,各第二终端设备可以是上述的第二终端设备c。各第二终端设备的数量可以是一个,也可以是多个。
69.可选地,各处理模块可以分别是一个用于实现具体功能或实现具体操作的虚拟模块,各处理模块的形式可以是一串代码,也可以是一个程序段或函数,还可以是一个通过封装代码得到的程序,本技术实施例对此不作限定。
70.各处理模块分别可以用于执行一种或多种业务操作。
71.该业务操作可以是指对该待处理数据可以执行的任意操作。比如,该业务操作可以包括建模操作、蒙皮操作、驱动操作、仿真操作、添加纹理、渲染操作、编辑操作等任意可能的操作。
72.各处理模块的数量也可以是一个或多个,具体可以分别由一个第二终端设备发送一个处理模块的信息,也可以由一个第二终端设备发送多个处理模块的信息,本技术实施例对此不作限定。
73.示例性地,该处理模块的信息可以包括该处理模块,也就是说,在这种情况下,可以由各第二终端设备直接向该服务器发送生成好的处理模块。
74.另外,该处理模块的信息也可以包括创建该处理模块需要用到的信息,比如,该处理模块的信息可以是该处理模块的模块声明文件。也就是说,在这种情况下,可以由各第二终端设备向该服务器发送用于创建该处理模块需要用到的模块声明文件,然后由该服务器根据该模块声明文件创建出处理模块。
75.又例如,可以由至少一个开发部门的技术人员在其操作的第二终端设备上编写该处理模块的信息,然后通过该第二终端设备将该处理模块的信息发送给该服务器,并且还可以将该处理模块的信息存储在该第二终端设备中,本技术实施例对此不作限定。
76.并且,该服务器可以在接收到该处理模块的信息之后,将该处理模块的信息存储在相应的数据库或磁盘中,并且记录发送该处理模块的信息的第二终端设备。
77.值得注意的是,由于各第二终端设备的数量可以是一个或多个,而每一台第二终端设备发送的该处理模块的信息的数量也可以是一个或多个,那么,就可以由多个第二终端设备分别发送一个处理模块的信息到该服务器,也可以由多个第二终端设备分别发送的多个处理模块的信息到该服务器,还可以由一个第二终端设备发送一个或多个处理模块的信息到该服务器,本技术实施例对此不作限定。
78.值得说明的是,根据至少一个第二终端设备发送的处理模块的信息,获取各处理模块,该服务器就可以获取到开发部门的技术人员编写的处理模块的信息和/或处理模块。
79.这样,根据各第二终端设备发送的处理模块的信息,获取各处理模块,就可以实现
获取到用于执行具体业务操作的处理模块的目的,便于后续根据各处理模块对该待处理数据进行处理。
80.步骤1003:获取至少一个第三终端设备发送的配置信息。
81.可选地,各第三终端设备可以是上述的第三终端设备d,各第三终端设备的数量可以是一个,也可以是多个。
82.另外,各第三终端设备可以是由编辑部门的技术人员操作的终端设备,本技术实施例对此不做限定。
83.可选地,该配置信息可以用于指示该处理模块与该待处理数据之间、该处理模块与其他处理模块之间的关联信息以及该处理模块的执行参数。
84.该配置信息具体还可以用于指示具体要通过哪些处理模块对哪些待处理数据进行哪些业务操作。
85.该配置信息可以是由编辑部门的技术人员通过操作该第三终端设备输入到该第三终端设备中的,并且可以通过操作该第三终端设备将该配置信息发送到该服务器。
86.具体地,编辑部门的技术人员可以将当前需要进行处理的待处理数据的类型、格式、大小等信息,以及实际需要对该待处理数据进行的业务操作输入到该第三终端设备中,并由该第三终端设备根据编辑部门的技术人员输入的信息和业务操作生成该配置信息,本技术实施例对此不做限定。
87.具体地,该关联信息具体可以包括该处理模块与该待处理数据之间的关联关系,也可以包括该处理模块与其他处理模块之间的关联关系。
88.其中,该处理模块与其他处理模块之间的关联关系可以指示执行各处理模块的顺序。
89.另外,该处理模块与其他处理模块之间的关联关系具体还可以指示该处理模块的输入是否为其他处理模块的输出、该处理模块的输出是否为其他处理模块的输入、该处理模块的输入具体是哪个其他处理模块的输出、该处理模块的输出具体是哪个其他处理模块的输入等。
90.可选地,该处理模块的执行参数可以用于指示该处理模块执行业务操作的次数、开始执行的时间、该处理模块在执行业务操作时需要获取的待处理数据的存储路径等参数,本技术实施例对此不做限定。
91.值得注意的是,通过获取各第三终端设备发送的配置信息,该服务器就可以获取到编辑部门的技术人员输入的该配置信息。
92.值得说明的是,由于该配置信息可以用于指示该处理模块与该待处理数据之间、该处理模块与其他处理模块之间的关联信息以及该处理模块的执行参数,那么在获取到该配置信息之后,该服务器就可以确定出具体需要通过调用哪些处理模块来对哪些待输出数据进行何种业务操作,便于执行后续操作。
93.步骤1004:基于各配置信息和各处理模块生成流程实例。
94.可选地,该流程实例用于指示需要调用的该待处理数据以及该处理模块需要对该待处理数据进行的业务操作。
95.另外,该流程实例还可以用于指示需要调用的处理模块,以及执行各处理模块的顺序。
96.可选地,该流程实例可以是一个待执行的脚本、程序或代码,本技术实施例对此不做限定。
97.值得说明的是,由于该流程实例是根据各配置信息和各处理模块生成的,那么该流程实例就可以用于指示需要调用的该待处理数据、需要调用的处理模块以及该处理模块需要对该待处理数据进行的业务操作,这样,该服务器就可以准确地确定出需要对各待处理数据进行的处理,进而可以提高数据协同处理的可靠性和准确性。
98.步骤1005:执行该流程实例,输出该流程实例执行后的执行结果数据。
99.可选地,该执行结果数据可以是指对各待处理数据进行数据处理之后得到的数据,该执行结果数据可以是任意可能的形式的数据,本技术实施例对此不做限定。
100.值得说明的是,执行该流程实例可以是指按照执行各处理模块的顺序,依次执行各处理模块,并在执行各处理模块时调用与各处理模块存在关联关系的待处理数据,以便通过各处理模块对各待处理数据进行相应的业务操作。并且,由于各处理模块之间也是存在关联关系的,还可以在执行任一处理模块时调用其他处理模块的输出作为这任一处理模块的输入,还可以在执行完任一处理模块之后,将这任一处理模块的输出作为其他处理模块的输入。这样,就可以实现对数据进行准确、可靠地处理的目的。
101.在本技术实施例中,通过获取至少一个第一终端设备发送的待处理数据,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,获取至少一个第三终端设备发送的配置信息,基于各配置信息和各处理模块生成流程实例,执行该流程实例,输出该流程实例执行后的执行结果数据。
102.其中,由于该待处理数据、该处理模块的信息、该配置信息可以分别是由不同部门的技术人员操作不同的终端设备采集、编写、输入的,那么,获取至少一个第一终端设备发送的待处理数据,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,获取至少一个第三终端设备发送的配置信息,这样就可以使得该服务器获取到由不同部门的技术人员或由不同技术人员发送的该待处理数据、该处理模块的信息、该配置信息,并且可以使得该服务器确定出需要通过调用哪些处理模块来对哪些待输出数据进行何种业务操作,以实现多部门进行数据协同处理的目的。
103.基于各配置信息和各处理模块生成流程实例,由于该流程实例是根据各配置信息和各处理模块生成的,那么该流程实例用于指示需要调用的该待处理数据、需要调用的处理模块以及该处理模块需要对该待处理数据进行的业务操作,这样,该服务器就可以准确地确定出需要对各待处理数据进行的处理,进而可以提高数据协同处理的可靠性和准确性。
104.执行该流程实例,输出该流程实例执行后的执行结果数据,执行该流程实例可以是指按照执行各处理模块的顺序,依次执行各处理模块,并在执行各处理模块时调用与各处理模块存在关联关系的待处理数据,以便通过各处理模块对各待处理数据进行相应的业务操作。并且,由于各处理模块之间也是存在关联关系的,还可以在执行任一处理模块时调用其他处理模块的输出作为这任一处理模块的输入,还可以在执行完任一处理模块之后,将这任一处理模块的输出作为其他处理模块的输入。这样,就可以实现对数据进行准确、可靠地处理的目的。
105.由于该服务器可以直接通过各第一终端设备、各第二终端设备、各第三终端设备
得到由多部门的技术人员或多个技术人员采集、编写、输入的该待处理数据、该处理模块的信息、该配置信息,也就是说,多部门的技术人员或多个技术人员可以只需要将自己负责的数据、信息或模块发送到该服务器,即可由该服务器实现对各待处理数据的协同处理,这样就不需要各技术人员相互该待处理数据、该处理模块的信息和/或该配置信息,这样就可以避免出现数据丢失或模块损坏的情况。
106.并且,在该待处理数据、该处理模块的信息和/或该配置信息发生变动的情况下,相应的技术人员可以直接通过其操作的第一终端设备、第二终端设备或第三终端设备将更新后的该待处理数据、该处理模块的信息和/或该配置信息发送到该服务器,这样,就可以提高更新该待处理数据、该处理模块的信息和/或该配置信息的效率。
107.如此,可以达到提高数据协同处理的稳定性和效率的效果,另外,还可以提高数据协同处理的可靠性和准确性。
108.需要说明的是,在一种可能的方式中,在执行步骤1001、步骤1002、和/或步骤1003时,该待处理数据、该处理模块的信息和/或该配置信息也可能均是由同一技术人员通过其操作的终端设备发送到该服务器的,那么,在这种情况下,该第一终端设备、该第二终端设备和/或该第三终端设备就可以是同一个终端设备。也即,可以通过同一个终端设备将该待处理数据、该处理模块的信息和/或该配置信息发送到该服务器,并由该服务器继续执行步骤1004和步骤1005,以实现对该待处理数据进行数据处理并得到该执行结果数据的目的。
109.一种可能的实现方式中,参见图3,根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块,包括:
110.步骤1006:获取该第二终端设备发送的模块声明文件。
111.可选地,该模块声明文件可以用于指示需要创建的处理模块的属性信息。
112.该属性信息包括:模块功能、接口协议、控制命令、资源需求。
113.具体地,该模块功能可以指示该处理模块可以执行的业务操作。
114.该接口协议可以指示该处理模块进行数据交换的接口间的通信方式和要求。
115.该控制命令可以指示在执行该处理模块时需要调用的进程。
116.该资源需求可以指示需要给该处理模块分配的硬件资源,比如,可以指示需要给该处理模块分配的中央处理器(central processing unit,简称cpu)资源、内存资源、图形处理器(graphics processing unit,简称gpu),资源。
117.步骤1007:根据该模块声明文件创建该处理模块。
118.值得注意的是,在这种情况下,该模块声明文件就可以是由该第二终端设备发送的处理模块的信息。这样,该服务器就可以根据各第二终端设备发送的由开发部门的技术人员编写的模块声明文件,获取到出具有模块功能、接口协议、控制命令、资源需求的处理模块,便于后续根据各处理模块和上述配置信息生成流程实例,并执行该流程实例对该待处理数据进行处理。
119.一种可能的实现方式中,参见图4,根据该模块声明文件创建该处理模块,包括:
120.步骤1008:确定该模块声明文件是否满足预设的创建条件。
121.可选地,该预设的创建条件可以是由相关技术人员根据实际需要设置的条件。
122.示例性地,该预设的创建条件可以是符合由相关技术人员定义编写的匹配文件,该匹配文件中可以包括一些预设的属性信息和/或预设的属性信息的格式,该匹配文件可
以是.gitlab-ci.yml文件。
123.例如,可以通过执行该匹配文件来检查该模块声明文件的属性信息是否与预设的属性信息和/或预设的属性信息的格式匹配,若匹配,则可以确定该模块声明文件满足预设的创建条件,反之,则确定该模块声明文件不满足预设的创建条件。
124.步骤1009:若满足,则根据该模块声明文件所指示的该处理模块的属性信息,从预设的程序库中读取该处理模块所需的程序片段,对该程序片段拼接处理,得到该处理模块。
125.可选地,该预设的程序库中可以存储多个程序片段。
126.示例性地,该预设的程序库可以是git仓库,程序片段可以是存储在git仓库中的一串代码。
127.又例如,在这种情况下,从预设的程序库中读取该处理模块所需的程序片段,对该程序片段拼接处理,得到该处理模块的操作可以是通过git hooks插件来实现的。一般地,git hooks插件可以用于在某事件发生前或完成后添加的自定义动态任务,通常会利用git hooks插件来完成一些自动测试、集成、构建等工作流程。
128.步骤1010:若不满足,则将该模块声明文件中不满足该预设的创建条件的文件内容发送给对应的第二终端设备。
129.可选地,对应的第二终端设备可以是指发送该模块声明文件的第二终端设备或者与发送该模块声明文件的第二终端设备存在关联关系的其他第二终端设备,本技术实施例对此不做限定。
130.示例性地,该模块声明文件中不满足该预设的创建条件的文件内容具体可以是指该模块声明文件与预设的属性信息和/或预设的属性信息的格式不匹配的属性信息。比如,该属性信息包括模块功能、接口协议、控制命令、资源需求,若该模块声明文件指示的接口协议与预设的属性信息中的接口协议不同,那么,就可以确定该模块声明文件指示的接口协议就是该模块声明文件中不满足该预设的创建条件的文件内容。
131.可选地,可以以文本、图像、声音等各种形式将该模块声明文件中不满足该预设的创建条件的文件内容发送给对应的第二终端设备。
132.这样,可以提高获取该处理模块的灵活性,并且,在该模块声明文件不满足预设的创建条件的情况下,还可以及时告知相关技术人员进行相应的处理,因此,还可以提高数据协同处理的效率。
133.一种可能的实现方式中,参见图5,基于该配置信息和各处理模块生成流程实例,包括:
134.步骤1011:解析该配置信息,确定该处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数。
135.这样,该服务器就可以准确地确定出需要通过哪些处理模块对哪些待处理数据进行哪些业务操作,执行各处理模块的顺序、以及各处理模块之间的输入和输出的关系、该处理模块执行业务操作的次数、开始执行的时间以及该处理模块在执行业务操作时需要获取的待处理数据的存储路径,便于生成该流程实例。
136.步骤1012:根据各处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数生成该流程实例。
137.值得说明的是,具体可以根据需要调用的该待处理数据、该处理模块需要对该待
处理数据进行的业务操作、需要调用的处理模块以及执行各处理模块的顺序来生成该流程实例,这样,该服务器就可以准确地确定出需要对各待处理数据进行的处理,进而可以提高数据协同处理的可靠性和准确性。
138.一种可能的实现方式中,参见图6,根据各处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数,包括:
139.步骤1013:调用该处理模块,并将该处理模块的执行参数写入该处理模块。
140.可选地,可以根据该处理模块与该待处理数据的关联信息从各第二终端设备发送的各处理模块中确定出需要调用的处理模块。
141.也就是说,可以根据需要处理的数据的类型、格式等信息确定需要调用的该处理模块。
142.具体可以将调用的各处理模块需要执行业务操作的次数、开始执行的时间、该处理模块在执行业务操作时需要获取的待处理数据的存储路径等参数写入该处理模块。
143.步骤1014:根据该处理模块与其他处理模块之间的关联信息,建立处理模块节点树。
144.可选地,该处理模块节点树中包括多个节点。
145.各节点分别表征一个处理模块。
146.值得注意的是,由于该处理模块与其他处理模块之间的关联关系具体还可以指示该处理模块的输入是否为其他处理模块的输出、该处理模块的输出是否为其他处理模块的输入、该处理模块的输入具体是哪个其他处理模块的输出、该处理模块的输出具体是哪个其他处理模块的输入等,那么就可以根据该处理模块与其他处理模块之间的关联信息,建立的处理模块节点树就可以是按照各处理模块之间的输入、输出关系生成的一个节点树。
147.另外,该处理模块节点树可以包括一个开始节点和一个结束节点。
148.该开始节点和该结束节点并不表征任何处理模块。该开始节点用于指示开始执行该处理模块节点树或该流程实例,该结束节点用于指示结束执行该处理模块节点树或该流程实例。
149.步骤1015:根据该处理模块与该待处理数据的关联信息,在该处理模块节点树中添加节点数据。
150.可选地,该节点数据用于指示该处理模块与待处理数据的关联信息。
151.也就是说,该节点数据具体可以用于指示在执行该处理模块的时候,该处理模块需要调用的待处理数据。
152.步骤1016:按照该处理模块节点树中各节点的位置以及节点数据,生成该流程实例。
153.可选地,各节点的位置可以用于表征该处理模块节点树中各处理模块的执行顺序,以及各处理模块的输入输出的关系。
154.这样,该服务器就可以生成该流程实例,那么该服务器就可以准确地确定出需要对各待处理数据进行的处理,进而可以提高数据协同处理的可靠性和准确性。
155.一种可能的实现方式中,参见图7,执行该流程实例,输出该流程实例执行后的执行结果数据,包括:
156.步骤1017:通过虚拟容器中的目标程序执行该流程实例,得到该流程实例执行后
的执行结果数据。
157.可选地,该虚拟容器可以是一个部署linux操作系统或其他任一操作系统的容器,该虚拟容器具有隔离性,这样,可以提高该目标程序在该虚拟容器中运行的安全性。
158.该目标程序包括主循环进程和多个子进程。
159.该主循环进程用于调用并控制各子进程。
160.该目标程序可以是maya、3d max等软件。
161.值得注意的是,由于该目标程序在不执行该流程实例的情况下,该目标程序可能会处于休眠状态或挂起状态,那么在开始执行该流程实例时,就需要唤醒该目标程序或初始化该目标程序,尤其是maya、3d max等软件等初始化时间较长的软件,这样就会导致浪费较长的时间,影响进行数据协同处理的效率。
162.因此,该主循环进程可以持续保持运行状态,以确保该目标程序持续处于唤醒状态或初始化后的状态,这样,就可以提高进行数据协同处理的效率。
163.步骤1018:将该流程实例执行后的执行结果数据存储到数据库中,并将该流程实例执行后的执行结果数据输出。
164.可选地,该数据库可以是设置在该服务器中的专用于存储执行结果数据的数据库,这样,可以确保该执行结果数据与其他数据隔离。
165.值得注意的是,在输出执行结果数据时,可以将该执行结果数据分别输出到上述各第一终端设备、各第二终端设备和各第三终端设备,也可以只将该执行结果数据输出到上述各第一终端设备、各第二终端设备、各第三终端设备中的任一个终端设备,还可以将该执行结果数据输出到上述的第四终端设备中,本技术实施例对此不做限定。
166.值得说明的是,通过将执行结果数据存储到数据库中,就可以对该执行结果数据进行备份。这样,不但可以实现对数据进行准确、可靠地处理的目的,还可以提高存储该执行结果数据的安全性、输出该执行结果数据的灵活性。
167.一种可能的实现方式中,参见图8,通过虚拟容器中的目标程序执行该流程实例,得到该流程实例执行后的执行结果数据,包括:
168.步骤1019:通过该主循环进程接收并解析该流程实例,得到该流程实例中的各处理模块以及与各处理模块关联的待处理数据以及其他处理模块。
169.值得说明的是,由于该主循环进程是用于调用并控制各子进程的,并且该主循环进程可以持续保持运行状态,那么由该主循环进程接收并解析该流程实例就可以确保该目标程序中各子进程可以正确地、快速地执行各处理模块,这样,可以提高进行数据协同处理的准确性和效率。
170.步骤1020:通过该主循环进程控制各子进程执行各处理模块,以对该处理模块关联的待处理数据进行处理。
171.具体地,可以是分别由该主循环进程控制一个子进程来执行一个处理模块,并通过各子进程调用与该处理模块关联的待处理数据,以准确地对待处理数据进行处理。
172.步骤1021:获取各子进程输出的处理数据,并根据各处理模块与其他处理模块的关联信息,将各处理数据发送到其他子进程或者将各处理数据作为该执行结果数据。
173.可选地,各子进程输出的处理数据可以是指在各子进程中执行的处理模块对相应的数据进行处理之后得到的数据,各子进程输出的处理数据就是各处理模块的输出。
174.值得注意的是,由于各处理模块之间存在一定的顺序和输入输出关系,那么若在一个子进程中执行的处理模块为该处理模块节点树中的最后一个节点,则可以将这个子进程输出的处理数据作为执行结果数据。
175.若在一个子进程中执行的处理模块并为该处理模块节点树中的最后一个节点,并且这个子进程中执行的处理模块的输出需要作为其他处理模块的输入,则可以将这个子进程输出的处理数据作为其他处理模块的输入并将这个子进程输出的处理数据输出到发送到相应的子进程。
176.这样,可以确保各子进程可以正确地执行各处理模块,进而确保该服务器可以正确地进行数据处理。
177.一种可能的实现方式中,该方法还包括:
178.实时监控该主循环进程和各子进程的资源信息。
179.可选地,该资源信息包括占用的cpu资源、内存资源、gpu资源。
180.该资源信息可以用百分比的形式显示,该资源信息具体可以是该主循环进程和各子进程占用的cpu资源、内存资源或gpu资源与分配给该主循环进程和各子进程的比值。
181.比如,该服务器给该主循环进程分配了4gb的内存资源,而主循环进程当前占用了3gb的内存资源,那么该资源信息就可以指示该主循环进程占用了75%的内存资源。
182.值得注意的是,由于该主循环进程和各子进程是该目标程序中的进程,那么,在检测到该主循环进程和各子进程的资源信息的情况下,就可以确定目标程序的资源信息的,而该目标程序在该虚拟容器中运行,进而可以确定该虚拟容器占用的资源。
183.实时根据该资源信息对该主循环进程、各子进程和/或该虚拟容器分配资源。
184.可选地,分配资源的操作可以是调整该服务器给该分配的cpu资源、内存资源、gpu资源。
185.在该主循环进程、各子进程和/或该虚拟容器占用的cpu资源、内存资源和/或gpu资源超过预设的资源阈值的情况下,可以为该主循环进程、各子进程和/或该虚拟容器分配预设的资源值。
186.示例性地,假设该主循环进程的资源信息指示该主循环进程当前占用的内存资源为95%,而预设的资源阈值为90%,预设的资源值为1gb,则可以为该主循环进程分配1gb的内存资源,若在分配后该主循环进程当前占用的内存资源依旧大于该预设的资源阈值,则继续为该主循环进程分配1gb的内存资源,直至该主循环进程当前占用的内存资源小于或等于该预设的资源阈值。
187.这样,可以避免该主循环进程、各子进程和/或该虚拟容器占用的资源过高导致该主循环进程、各子进程、该目标程序和/或该虚拟容器崩溃或宕机,进而可以提高数据协同处理的稳定性。
188.一种可能的实现方式中,该方法还包括:
189.实时监控该主循环进程和各子进程的执行情况。
190.该执行情况包括执行结束、执行失败、正在执行。
191.值得注意的是,由于各处理模块在各子进程中执行,那么,该执行情况就可以指示各处理模块或各节点的执行情况。
192.实时根据该执行情况生成并输出进度信息。
193.可选地,该进度信息可以用于指示该流程实例执行到哪一个节点,或执行到哪一个处理模块,还可以用于指示该流程实例中各处理模块的执行情况。
194.这样,便于相关技术人员查看该服务器当前进行数据处理的进度。
195.一种可能的方式,在该执行情况为执行失败的情况下,该服务器还可以复制当前执行的节点的位置、顺序、节点数据,并根据当前执行的节点的位置、顺序、节点数据重新创建一个新的节点,尝试重新执行该新的节点。或者,还可以复制当前执行处理模块对应的属性信息,重新根据该属性信息生成一个新的处理模块,并将新的处理模块放在一个新的子进程中重新执行新的处理模块。
196.然后在该新的节点或新的处理模块执行失败的情况下,生成故障信息,并输出故障信息到相应的终端设备以告知相关技术人员进行排障处理。
197.一种可能的方式中,在该执行情况为执行失败的情况下,该服务器可以生成故障信息,并将该故障信息输出到相应的终端设备。
198.这样,可以及时告知相关技术人员进行排障。
199.由于该配置信息还可以用于指示在执行该流程实例时是否需要校验各处理模块,为此本技术实施例还提供一种可能的实现方式。执行该流程实例,输出该流程实例执行后的执行结果数据,还包括:
200.在执行完成该流程实例中需要校验的处理模块时,生成并输出处理模块校验结果。
201.一种可能的实现方式中,参见图9,在获取至少一个第一终端设备发送的待处理数据之前,该方法还包括:
202.步骤1022:生成目标程序的镜像文件。
203.可选地,可以根据docker镜像技术生成目标程序的镜像文件。
204.该镜像文件可以用于在该服务器中安装该目标程序。
205.步骤1023:基于该镜像文件将该目标程序部署到虚拟容器中,并在该虚拟容器中生成该目标程序的主循环进程和多个子进程。
206.这样,就可以在该服务器的该虚拟容器中部署该目标程序,便于后续利用该目标程序执行该流程实例对该待处理数据进行数据处理。
207.步骤1024:启动该主循环进程。
208.由于该主循环进程可以持续保持运行状态,以确保该目标程序持续处于唤醒状态或初始化后的状态,这样,就可以提高后续进行数据协同处理的效率。
209.一种可能的实现方式中,基于该镜像文件将该目标程序部署到虚拟容器中,并在该虚拟容器中生成该目标程序的主循环进程和多个子进程,包括:
210.基于该镜像文件将该目标程序部署到多个不同的虚拟容器中。
211.这样,可以将该目标程序部署在多个虚拟容器中。
212.在各虚拟容器中分别生成该目标程序的一个主循环进程和一个子进程。
213.值得说明的是,可以由各个主循环进程接收并解析该流程实例,在这种情况下,各主循环进程之间还可以相互通信,且各主循环进程分别对应一个唯一的标记,该标记可以是各主循环进程的序号,还可以用于指示各主循环进程在解析该流程实例之后得到的处理模块的顺序、关联信息或节点的位置、节点数据。
214.也就是说,每个主循环进程只需要得到一个处理模块,并将这一个处理模块配置到与各主循环进程在一个虚拟容器中的子进程,并且各主循环进程还可以标记将子进程输出的处理数据发送给其他的主循环进程,作为其他子进程的输入。
215.由于每个子进程都位于不同的虚拟容器中,而该虚拟容器具有隔离性,那么就可以实现各子进程之间的隔离,这样,即使某一子进程占用的资源较多,也不会影响其他的子进程的处理效率。如此,可以提高数据协同处理的安全性和效率。
216.下述对用以执行的本技术所提供数据协同处理方法的装置、设备及计算机可读存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
217.图10是本技术实施例提供的一种数据协同处理装置的结构示意图,参见图10,该装置包括:
218.第一获取模块201,用于获取至少一个第一终端设备发送的待处理数据。
219.第二获取模块202,用于根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块。
220.可选地,各处理模块分别用于执行一种或多种业务操作;
221.第三获取模块203,用于获取至少一个第三终端设备发送的配置信息。
222.可选地,该配置信息用于指示该处理模块与该待处理数据之间、该处理模块与其他处理模块之间的关联信息以及该处理模块的执行参数。
223.生成模块204,用于基于各配置信息和各处理模块生成流程实例。
224.可选地,该流程实例用于指示需要调用的该待处理数据以及该处理模块需要对该待处理数据进行的业务操作。
225.执行输出模块205,用于执行该流程实例,输出该流程实例执行后的执行结果数据。
226.可选地,第二获取模块202还可以用于获取该第二终端设备发送的模块声明文件,根据该模块声明文件创建该处理模块。
227.第二获取模块202还可以用于确定该模块声明文件是否满足预设的创建条件,在满足的情况下,则根据该模块声明文件所指示的该处理模块的属性信息,从预设的程序库中读取该处理模块所需的程序片段,对该程序片段拼接处理,得到该处理模块,在不满足的情况下,则将该模块声明文件中不满足该预设的创建条件的文件内容发送给对应的第二终端设备。
228.生成模块204,还可以用于解析该配置信息,确定该处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数,根据各处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数生成该流程实例。
229.生成模块204,还可以用于调用该处理模块,并将该处理模块的执行参数写入该处理模块,根据该处理模块与其他处理模块之间的关联信息,建立处理模块节点树,根据该处理模块与该待处理数据的关联信息,在该处理模块节点树中添加节点数据,按照该处理模块节点树中各节点的位置以及节点数据,生成该流程实例。
230.执行输出模块205,还可以用于通过虚拟容器中的目标程序执行该流程实例,得到该流程实例执行后的执行结果数据,将该流程实例执行后的执行结果数据存储到数据库
中,并将该流程实例执行后的执行结果数据输出。
231.执行输出模块205,还可以用于通过该主循环进程接收并解析该流程实例,得到该流程实例中的各处理模块以及与各处理模块关联的待处理数据以及其他处理模块,通过该主循环进程控制各子进程执行各处理模块,以对该处理模块关联的待处理数据进行处理,获取各子进程输出的处理数据,并根据各处理模块与其他处理模块的关联信息,将各处理数据发送到其他子进程或者将各处理数据作为该执行结果数据。
232.第一获取模块101还可以用于实时监控该主循环进程和各子进程的资源信息。
233.执行输出模块205,还可以用于实时根据该资源信息对该主循环进程、各子进程和/或该虚拟容器分配资源。
234.第一获取模块101还可以用于实时监控该主循环进程和各子进程的执行情况。
235.执行输出模块205,还可以用于实时根据该执行情况生成并输出进度信息。
236.生成模块204,还可以用于生成目标程序的镜像文件,基于该镜像文件将该目标程序部署到虚拟容器中,并在该虚拟容器中生成该目标程序的主循环进程和多个子进程,启动该主循环进程。
237.生成模块204,还可以用于基于该镜像文件将该目标程序部署到多个不同的虚拟容器中,在各虚拟容器中分别生成该目标程序的一个主循环进程和一个子进程。
238.上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
239.以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,简称asic),或,一个或多个微处理器,或,一个或者多个现场可编程门阵列(field programmable gate array,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,简称cpu)或其他可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。
240.图11是本技术实施例提供的一种计算机设备的结构示意图。参见图11,计算机设备包括:存储器301、处理器302,存储器301中存储有可在处理器302上运行的计算机程序,处理器302执行计算机程序时,实现上述任意各个方法实施例中的步骤。
241.处理器302用于获取至少一个第一终端设备发送的待处理数据。
242.处理器302用于根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块。
243.处理器302用于获取至少一个第三终端设备发送的配置信息。
244.处理器302用于基于各配置信息和各处理模块生成流程实例。
245.处理器302用于执行该流程实例,输出该流程实例执行后的执行结果数据。
246.可选地,处理器302还可以用于获取该第二终端设备发送的模块声明文件,根据该模块声明文件创建该处理模块。
247.处理器302还可以用于确定该模块声明文件是否满足预设的创建条件,在满足的情况下,则根据该模块声明文件所指示的该处理模块的属性信息,从预设的程序库中读取该处理模块所需的程序片段,对该程序片段拼接处理,得到该处理模块,在不满足的情况
下,则将该模块声明文件中不满足该预设的创建条件的文件内容发送给对应的第二终端设备。
248.处理器302还可以用于解析该配置信息,确定该处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数,根据各处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数生成该流程实例。
249.处理器302还可以用于调用该处理模块,并将该处理模块的执行参数写入该处理模块,根据该处理模块与其他处理模块之间的关联信息,建立处理模块节点树,根据该处理模块与该待处理数据的关联信息,在该处理模块节点树中添加节点数据,按照该处理模块节点树中各节点的位置以及节点数据,生成该流程实例。
250.处理器302还可以用于通过虚拟容器中的目标程序执行该流程实例,得到该流程实例执行后的执行结果数据,将该流程实例执行后的执行结果数据存储到数据库中,并将该流程实例执行后的执行结果数据输出。
251.处理器302还可以用于通过该主循环进程接收并解析该流程实例,得到该流程实例中的各处理模块以及与各处理模块关联的待处理数据以及其他处理模块,通过该主循环进程控制各子进程执行各处理模块,以对该处理模块关联的待处理数据进行处理,获取各子进程输出的处理数据,并根据各处理模块与其他处理模块的关联信息,将各处理数据发送到其他子进程或者将各处理数据作为该执行结果数据。
252.处理器302还可以用于实时监控该主循环进程和各子进程的资源信息。
253.处理器302还可以用于实时根据该资源信息对该主循环进程、各子进程和/或该虚拟容器分配资源。
254.处理器302还可以用于实时监控该主循环进程和各子进程的执行情况。
255.处理器302还可以用于实时根据该执行情况生成并输出进度信息。
256.处理器302还可以用于生成目标程序的镜像文件,基于该镜像文件将该目标程序部署到虚拟容器中,并在该虚拟容器中生成该目标程序的主循环进程和多个子进程,启动该主循环进程。
257.处理器302还可以用于基于该镜像文件将该目标程序部署到多个不同的虚拟容器中,在各虚拟容器中分别生成该目标程序的一个主循环进程和一个子进程。
258.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
259.该处理器用于获取至少一个第一终端设备发送的待处理数据。
260.该处理器用于根据至少一个第二终端设备发送的处理模块的信息,获取至少一个处理模块。
261.该处理器用于获取至少一个第三终端设备发送的配置信息。
262.该处理器用于基于各配置信息和各处理模块生成流程实例。
263.该处理器用于执行该流程实例,输出该流程实例执行后的执行结果数据。
264.可选地,该处理器还可以用于获取该第二终端设备发送的模块声明文件,根据该模块声明文件创建该处理模块。
265.该处理器还可以用于确定该模块声明文件是否满足预设的创建条件,在满足的情
况下,则根据该模块声明文件所指示的该处理模块的属性信息,从预设的程序库中读取该处理模块所需的程序片段,对该程序片段拼接处理,得到该处理模块,在不满足的情况下,则将该模块声明文件中不满足该预设的创建条件的文件内容发送给对应的第二终端设备。
266.该处理器还可以用于解析该配置信息,确定该处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数,根据各处理模块、该处理模块与该待处理数据的关联信息、该处理模块与其他处理模块的关联信息以及该处理模块的执行参数生成该流程实例。
267.该处理器还可以用于调用该处理模块,并将该处理模块的执行参数写入该处理模块,根据该处理模块与其他处理模块之间的关联信息,建立处理模块节点树,根据该处理模块与该待处理数据的关联信息,在该处理模块节点树中添加节点数据,按照该处理模块节点树中各节点的位置以及节点数据,生成该流程实例。
268.该处理器还可以用于通过虚拟容器中的目标程序执行该流程实例,得到该流程实例执行后的执行结果数据,将该流程实例执行后的执行结果数据存储到数据库中,并将该流程实例执行后的执行结果数据输出。
269.该处理器还可以用于通过该主循环进程接收并解析该流程实例,得到该流程实例中的各处理模块以及与各处理模块关联的待处理数据以及其他处理模块,通过该主循环进程控制各子进程执行各处理模块,以对该处理模块关联的待处理数据进行处理,获取各子进程输出的处理数据,并根据各处理模块与其他处理模块的关联信息,将各处理数据发送到其他子进程或者将各处理数据作为该执行结果数据。
270.该处理器还可以用于实时监控该主循环进程和各子进程的资源信息。
271.该处理器还可以用于实时根据该资源信息对该主循环进程、各子进程和/或该虚拟容器分配资源。
272.该处理器还可以用于实时监控该主循环进程和各子进程的执行情况。
273.该处理器还可以用于实时根据该执行情况生成并输出进度信息。
274.该处理器还可以用于生成目标程序的镜像文件,基于该镜像文件将该目标程序部署到虚拟容器中,并在该虚拟容器中生成该目标程序的主循环进程和多个子进程,启动该主循环进程。
275.该处理器还可以用于基于该镜像文件将该目标程序部署到多个不同的虚拟容器中,在各虚拟容器中分别生成该目标程序的一个主循环进程和一个子进程。
276.可选地,本技术还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述任一数据协同处理方法实施例。
277.在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
278.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络
单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
279.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
280.上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-only memory,简称:rom)、随机存取存储器(英文:random access memory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
281.上仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
282.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1