任务处理方法、装置、设备和存储介质与流程

文档序号:31358719发布日期:2022-08-31 14:10阅读:49来源:国知局
任务处理方法、装置、设备和存储介质与流程

1.本公开涉及计算机技术领域,具体涉及直播、客户端应用等技术领域,尤其涉及一种任务处理方法、装置、设备和存储介质。


背景技术:

2.随着计算机技术的发展,尤其是移动互联网技术的发展,应用(application,app)的种类越来越多。任务是应用增加用户活跃度和用户粘性的重要手段。任务本质上是完成一系列动作后,获取对应奖励。
3.相关技术中,任务与业务强关联,每个业务方内集成各自的任务系统。


技术实现要素:

4.本公开提供了一种任务处理方法、装置、设备和存储介质。
5.根据本公开的一方面,提供了一种任务处理方法,所述方法应用于任务中心,所述方法包括:接收业务方发送的任务处理消息,所述任务处理消息用于处理目标任务,所述任务处理消息中包含所述业务方的标识信息;其中,所述业务方与所述任务中心分离设置;基于所述业务方的标识信息,确定所述业务方对应的目标处理资源;其中,所述任务中心包括:多个业务方对应的处理资源,且,不同的业务方对应不同的处理资源;采用所述目标处理资源,对所述目标任务进行处理。
6.根据本公开的另一方面,提供了一种任务处理装置,所述装置应用于任务中心,所述装置包括:接收模块,用于接收业务方发送的任务处理消息,所述任务处理消息用于处理目标任务,所述任务处理消息中包含所述业务方的标识信息;其中,所述业务方与所述任务中心分离设置;确定模块,用于基于所述业务方的标识信息,确定所述业务方对应的目标处理资源;其中,所述任务中心包括:多个业务方对应的处理资源,且,不同的业务方对应不同的处理资源;处理模块,用于采用所述目标处理资源,对所述目标任务进行处理。
7.根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一方面的任一项所述的方法。
8.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据上述任一方面的任一项所述的方法。
9.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述任一方面的任一项所述的方法。
10.根据本公开的技术方案,可以提高任务处理效率。
11.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
12.附图用于更好地理解本方案,不构成对本公开的限定。其中:
13.图1是根据本公开第一实施例的示意图;
14.图2是用来实现本公开实施例的任务处理方法的系统架构示意图;
15.图3根据本公开第二实施例的示意图;
16.图4是本公开实施例中父任务和子任务的存储结构示意图;
17.图5是本公开实施例中针对父任务和子任务的状态更新示意图;
18.图6是用来实现本公开实施例的任务处理方法的应用场景示意图;
19.图7是根据本公开第三实施例的示意图;
20.图8是根据本公开第四实施例的示意图;
21.图9是根据本公开第五实施例的示意图;
22.图10是用来实现本公开实施例的任务处理方法的电子设备的示意图。
具体实施方式
23.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
24.相关技术中,任务与业务强关联,每个业务方内集成各自的任务系统。
25.由于任务与业务强关联,存在任务处理效率差的问题。具体表现在不同业务方存在重复开发、兼容度差等问题,以及,针对app提供的业务,在业务更改任务后,app需要重新发版,app存在发版次数多、重复建设多等问题。
26.图1是根据本公开第一实施例的示意图,本实施例提供一种任务处理方法,所述方法应用于任务中心,所述方法包括:
27.101、接收业务方发送的任务处理消息,所述任务处理消息用于处理目标任务,所述任务处理消息中包含所述业务方的标识信息;其中,所述业务方与所述任务中心分离设置。
28.102、基于所述业务方的标识信息,确定所述业务方对应的目标处理资源;其中,所述任务中心包括:多个业务方对应的处理资源,且,不同的业务方对应不同的处理资源。
29.103、采用所述目标处理资源,对所述目标任务进行处理。
30.业务方,是指提供某种业务功能的系统,例如,直播系统、购物系统、游戏系统等。
31.为了增加用户活跃度和用户粘性,业务方可以为用户设置任务。
32.任务,是指完成业务方指定的动作后,获得业务方指定的奖励。
33.动作例如包括:关注、评论、转发等;奖励例如包括:电子红包、电子优惠券、电子抽奖奖品等。
34.目标任务,是指业务方指定的待处理任务。
35.业务方的标识信息,用于唯一标识业务方,即,不同业务方的标识信息是不同的。
36.相关技术中,各个业务方内集成各自的任务系统,但任务系统集成在各自业务方内的方式,存在一定的问题。
37.为此,本实施例中,可以将各个业务方的任务系统分离出来,由统一的任务中心对各个业务方的任务进行集中处理。
38.任务中心,用于对多个业务方中各个业务方的任务进行处理。
39.任务中心,与各个业务方都是分离设置的。
40.分离设置的含义是指,由任务中心执行各个业务方的任务处理相关功能,而不需要业务方在自身内部执行任务处理相关功能。
41.由于任务中心需要处理多个业务方的任务,因此,任务中心内可以配置多个业务方的处理资源。
42.各个业务方对应的处理资源,可以包括硬件资源和/或软件资源。
43.目标处理资源,是指目标任务所属的业务方对应的处理资源。
44.其中,任务中心内可以预先配置业务方的标识信息与处理资源的标识信息之间的对应关系,因此,基于该对应关系以及目标任务所属的业务方的标识信息,可以确定目标处理资源。
45.为了实现不同业务的任务之间的隔离,不同的业务方具有不同的处理资源。
46.确定出目标处理资源后,可以采用目标处理资源对目标任务进行处理。
47.基于业务方的不同需求,可以产生不同的任务处理请求,相应地,可以对目标任务进行不同的处理。
48.针对任务的处理可以包括:任务的查询、创建、修改、状态变更;任务类型的查询、创建、修改、状态变更;任务进度管理;任务上报管理等。
49.另外,任务中心还可以执行如下处理:任务模板的查询、创建、修改、状态变更;业务方申请审批等。
50.本实施例中,业务方与任务中心分离设置,由任务中心处理目标任务,可以将任务处理相关功能从业务方分离出来,而不再集成在业务方内部,从而可以提高任务处理效率;通过不同的业务方具有不同的处理资源,可以实现不同业务方的任务之间的隔离,可以避免不同业务方之间的干扰问题,并且,由于不同业务方的任务之间是相互隔离的,可以并行处理多个业务方的任务,进一步提高任务处理效率。
51.图2是用来实现本公开实施例的任务处理方法的系统架构示意图,如图2所示,系统可以包括:业务方201和任务中心202,业务方可以为多个,图2中以业务方包括:第一业务方、第二业务方和第三业务方为例。
52.任务中心为一个,多个业务方均与该任务中心连接。可以理解的是,一个任务中心并不限于任务中心的实现硬件是一个,任务中心可以采用分布式计算方式,由多个服务器实现任务中心的功能。
53.多个业务方中各个业务方可以实现各自的功能,相应地,可以设置各自的任务。各个业务方可以配置各自任务的相关信息,具体由任务中心对业务方的任务进行处理。
54.各个业务方可以通过软件开发工具包(software development kit,sdk)或应用程序编程接口(application programming interface,api)的方式,与任务中心进行交互。sdk可以包括:go-sdk,java-sdk,php-sdk,或者,js-sdk。
55.任务中心可以对外提供统一的入口,各个业务方通过该统一的入口接入任务中心,例如,该统一的入口称为任务调度器,任务调度器接收到业务方的任务处理消息后,可
以基于任务处理消息中携带的业务方的标识信息,以及预先配置的业务方的标识信息与处理资源之间的对应关系,确定各个业务方对应的各个处理资源,并将任务处理消息转发至业务方对应的处理资源进行任务处理。
56.其中,不同的业务方可以具有不同的处理资源,从而可以实现各个业务方的资源隔离,进而,可以对不同业务方的任务进行并行处理。具体可以采用go协程进行并行处理。
57.例如,如图2所示,多个业务方包括:第一业务方,第二业务方和第三业务方,假设第一业务方对应第一处理资源,第二业务方对应第二处理资源,第三业务方对应第三处理资源,则任务调度器接收到第一业务方的任务处理消息后,将由第一处理资源基于任务处理消息进行任务处理。
58.任务中心可以提供配置界面,以供业务方的相关人员在配置界面内输入目标任务的信息,任务中心基于目标任务的信息对目标任务进行处理。
59.配置界面可以是应用界面,应用可以是网页(web)应用,移动端应用、个人电脑(personal computer,pc)端应用等。
60.基于任务处理的不同阶段,任务处理消息可以具体为不同的消息,比如,任务处理消息可以是任务创建消息,任务中心可以基于任务创建消息创建目标任务;或者,任务处理消息可以是任务上报消息,任务中心可以基于任务上报消息对目标任务进行计算,以确定目标任务是否完成;或者,任务处理消息可以是查询消息,任务中心可以基于查询消息,向业务方反馈任务相关信息。进一步地,结合后续实施例,查询消息可以具体为任务模板查询消息、任务查询消息、任务进度查询消息等。另外,任务中心还可以向业务方反馈目标任务的处理结果。
61.下面以任务处理过程包括:任务创建阶段、任务查询阶段,以及,任务结果的反馈阶段为例,对本公开实施例提供的任务处理方法进行说明。
62.图3根据本公开第二实施例的示意图,本实施例提供一种任务处理方法,所述方法包括:
63.301、业务方,发送任务创建消息至任务中心。
64.其中,任务创建消息中可以携带待创建的目标任务的信息。
65.由于任务是完成动作,给予奖励,因此,目标任务的信息至少包括:任务指定的动作,完成任务需要满足的条件,完成任务给予的奖励;另外,还可以设置其他任务信息,具体可以包括:如下项中一项或多项:任务类型(如时长类、动作类、消费类)、任务阶段(如单阶段、多阶段)、任务形式(如单一、组合)、任务条件(如连续、跨天、每天)、面向对象(面向b端、面向c端)、任务范围(如房间、主播、平台)等。其中,在直播场景下,b端是指主播端,c端是指观众端。
66.任务中心可以为业务方提供配置界面,业务方的相关人员,例如运营人员,可以在配置界面中输入配置信息,配置信息可以是目标任务的信息,以触发任务中心创建目标任务。
67.另外,在一些场景下,比如直播场景下,还可以是任务发布方(如主播方)生成并发送任务创建消息至任务中心。
68.之后,任务中心可以基于任务创建消息创建目标任务。
69.若目标任务包括父任务和子任务,可以执行:
70.302、任务中心,响应于所述任务创建消息,采用树形结构,依次创建所述父任务和所述子任务,其中,所述父任务对应所述树形结构中的父节点,所述子任务对应所述树形结构中的子节点。
71.例如,目标任务的具体动作包括:关注和评论,则关注和评论这一整体可以作为父任务,而关注作为一个子任务,评论作为另一个子任务。
72.在创建多级任务时,父任务对应树形结构中的父节点,子任务对应树形结构中的子节点,如图4所示。
73.可以理解的是,多级任务不限于两级,还可以是更多级,即某个子任务可以作为其下级子任务的父任务。
74.本实施例中,采用树形结构管理父任务和子任务,可以实现多级任务的管理,并且,由于采用树形结构,可以节省存储资源,提高处理效率。
75.303、业务方,发送任务查询消息至任务中心。
76.之后,任务中心可以基于任务查询消息查询目标任务。具体可以执行:
77.304、任务中心,响应于所述任务查询消息,按照优先级从高到低的顺序,依次在三级存储资源中,查询所述目标任务。
78.其中,业务方在创建目标任务时,可以采用三级存储的方式,即,可以将目标任务存储在三种优先级的存储资源中,三种优先级的存储资源按照优先级从高到低的顺序分别为:内存、非关系型数据库(如redis)、关系型数据库(如mysql)。
79.查询任务时,可以按照优先级从高到低的顺序,依次查询每种优先级的存储资源,以获取目标任务。
80.例如,假设能够在内存中查询到目标任务,则将在内存中查询到的目标任务反馈给业务方;或者,若未能在内存中查询到目标任务,则在redis中查询,若成功查询到,则将在redis中查询到的目标任务反馈给业务方;或者,若未能在redis中查询到目标任务,则在mysql中查询。
81.非关系型数库也可以称为缓存,本实施例中,按照优先级顺序依次查询,可以优先在内存或缓存中查询目标任务,由于内存或缓存的读写速度较快,因此,可以较快地响应任务查询消息,提高读写速度。
82.另外,其他查询相关消息,比如,任务模板查询消息、任务进度查询消息,也可以采用类似任务查询消息的执行流程,按照三级存储的优先级依次查询。
83.另外,目标任务可以为一个或多个,在多个时,可以形成任务列表,以任务列表的形式反馈给业务方。
84.任务中心将目标任务反馈给业务方后,业务方可以执行目标任务,并将目标任务对应的动作的执行结果反馈给任务中心,例如,可以通过任务上报消息上报目标任务对应的动作的执行结果。任务中心基于目标任务对应的动作的执行结果,可以确定目标任务的完成进度信息。
85.例如,业务方完成了“关注”动作,则可以在任务上报消息中携带“关注”动作的信息。
86.其中,完成进度信息也可以称为状态信息,具体可以包括业务方已完成的动作、已完成的动作占任务所要求的全部动作的比例、完成人数等信息。
87.任务中心可以基于任务上报消息中携带的业务方已完成的动作信息,统计业务方的状态信息。
88.例如,目标任务的完成条件是完成“关注”任务和“评论”任务,若业务方只完成了“关注”任务,但未完成“评论”任务,则可以确定完成进度是50%;或者,若业务方完成了“关注”任务和“评论”任务,则确定完成进度为100%,此时可以确定业务方完成目标任务。
89.另外,任务上报消息以及其他消息可以存储在消息队列中,以便对各个业务方的各个任务上报消息进行同步或异步处理。消息队列例如为kafka队列。
90.305、任务中心,采用异步方式,向所述业务方反馈所述目标任务的处理结果。
91.其中,任务中心基于任务处理消息对目标任务进行处理的过程,还可以称为任务计算过程,任务计算过程对应的资源可以称为计算资源,向业务方反馈目标任务的处理结果的资源可以称为通知资源。
92.异步方式,是指上述的计算资源和通知资源是不同的,即,可以采用不同的资源分别进行计算和通知。
93.可以理解的是,计算资源和通知资源也可以是相同的,即也可以采用同步方式。
94.由于任务计算过程较为复杂,需要耗费较多的资源,本实施例中,通过采用异步方式反馈处理结果,可以将计算资源和通知资源分离,使得计算资源不再完成通知功能,从而降低计算资源的开销,提高任务计算效率。
95.另外,由于任务处理的具体内容可以是不同的,例如,任务创建、任务查询、任务状态确定等,因此,相应的任务处理结果也可以是不同的,例如,针对任务创建,任务处理结果可以是表明任务创建是否成功的信息,针对任务查询,任务处理结果可以是查询到的任务列表,针对任务状态确定,任务处理结果可以是任务的状态信息等。
96.进一步地,若目标任务包括父任务和子任务,可以按照先子任务再父任务的状态更新方式,以及,在父任务为完成状态时发布奖励。
97.图5示出了针对父任务和子任务的处理流程。初始时,父任务和子任务可以配置为未完成状态。
98.如图5所示,若目标任务包括父任务和子任务,目标任务的处理流程包括:
99.501、基于任务上报消息,确定已完成的子任务。
100.其中,任务上报消息中携带业务方已完成动作的信息,因此,可以将已完成动作所对应的子任务确定为已完成的子任务。
101.502、更新已完成的子任务的状态信息为已完成状态。
102.例如,若子任务对应的动作为“关注”,且业务方完成了“关注”这一动作,则将该子任务的状态信息更新为已完成状态,例如,未完成状态用“0”表示,完成状态用“1”表示,则该子任务的状态信息可以用“0”更新为“1”。
103.503、判断父任务对应的全部子任务的状态信息是否均为已完成状态,若是,执行504,否则重复执行503及其后续步骤。
104.504、更新父任务的状态信息为已完成状态。
105.例如,若父任务对应的全部子任务包括“关注”和“评论”,若这两个子任务都完成后,将该父任务的状态信息更新为已完成。
106.505、触发业务方发放目标任务对应的奖励资源。
107.其中,在父任务完成时,业务方可以基于目标任务对应的奖励资源,如电子红包、电子优惠券等,向对应的用户发放奖励资源。
108.本实施例中,通过子任务的完成情况,逐级更新父任务的完成情况,可以实现多级任务下的任务状态信息的更新。
109.上面描述了业务方与任务中心的交互流程,业务方在实现中可以分为业务服务端和业务客户端。
110.相应地,可以是业务客户端产生并将任务处理消息发送至业务服务端,再由业务服务端转发至任务中心。
111.由于业务客户端的数量一般较多,本实施例中,通过业务服务端将业务客户端的任务处理消息转发至任务中心,可以由业务服务端对各自的业务客户端进行管理,保证各个业务方的功能独立性和安全性;并且,通过转发消息至任务中心,不需要业务服务端进行任务相关功能处理,可以使得业务服务端更集中在各自的业务功能上,提高业务处理效率。
112.业务客户端又可以分为任务发布客户端和任务执行客户端。任务发布客户端是指发布任务的客户端,任务执行客户端是指执行任务的客户端。
113.以直播场景为例,如图6所示,直播场景的业务方可以包括:主播客户端601、观众客户端602和直播服务端603。
114.其中,客户端可以为安装在用户终端上的具有直播功能的应用程序(application,app),例如,具有直播功能的购物类app、娱乐类app等。在直播场景下,客户端可以分为主播客户端601和观众客户端602,主播客户端601是指主播使用的客户端,主播可以采用主播客户端进行直播;观众客户端602是指观众使用的客户端,观众可以采用观众客户端观看主播的直播。
115.用户终端可以包括移动设备(如手机、平板电脑等)、智能家居设备(如智能音箱、智能电视等)、智能可穿戴式设备(如智能手表等)等。直播客户端和观众客户端可以安装在相同或不同操作系统的用户终端上。
116.服务端可以部署在服务器上,服务端可以为本地服务端或者云端服务器。一个或多个直播服务端603可以为一个或多个主播客户端601,和/或,一个或多个观众客户端602提供服务。图6中以一个主播客户端601、多个观众客户端602、一个直播服务端603为例。
117.本公开实施例中,由任务中心对各个业务方的任务进行处理,因此,如图6所示,直播服务端603还与任务中心604通信连接,直播服务端603可以向任务中心604发送任务处理消息,任务中心604基于任务处理消息对直播业务方的目标任务进行处理。
118.在直播场景下,任务发布客户端可以具体为主播客户端,任务执行客户端可以具体为观众客户端。
119.可以理解的是,在不同的业务场景下,任务发布客户端和任务执行客户端可以相应调整,例如,在购物场景下,任务发布客户端可以为商家客户端,任务执行客户端可以为购买者客户端等。另外,在直播场景下,如果一个观众可以向其他观众发布任务,那么,任务发布客户端可以为能够发布任务的观众客户端,任务执行客户端可以为执行任务的观众客户端。
120.以任务发布客户端为主播客户端,任务执行客户端为观众客户端为例,主播客户端601可以在直播间发布任务,观众客户端602可以执行相关任务。直播服务端603可以将主
播客户端601和/或观众客户端602产生的任务处理消息转发至任务中心604进行处理,任务中心604对目标任务的处理结果也可以通过直播服务端603转发至主播客户端601和/或观众客户端602。
121.基于业务客户端的不同,业务客户端通过业务服务端与任务中心可以交互不同的任务处理消息。
122.其中,针对主播客户端,主播客户端可以查询任务模板,基于任务模板创建目标任务,之后,可以查询目标任务以及目标任务的完成进度等。具体流程可以参见图7。
123.其中,针对观众客户端,观众客户端可以查询目标任务,上报任务执行情况,之后,可以查询目标任务的完成进度等。具体流程可以参见图8。
124.图7是根据本公开第三实施例的示意图,本实施例提供一种任务处理方法,本实施例以业务客户端为主播客户端为例。如图7所示,本实施例提供的任务处理方法包括:
125.701、主播客户端,发送任务模板查询消息至直播服务端,直播服务端将任务模板查询消息转发至任务中心。
126.其中,直播业务方的相关人员,如运营人员可以通过配置界面输入配置信息并发送给任务中心,任务中心可以基于配置信息为直播业务方创建任务模板。
127.任务模板中可以包括通用内容,即,不同的主播可以查询到相同的任务模板,但不同的主播可以对任务模板中的内容进行定制化处理,从而不同主播可以基于相同的任务模板配置不同的目标任务。
128.702、任务中心,将直播业务对应的任务模板,通过直播服务端反馈给主播客户端。
129.703、主播客户端,发送任务创建消息至直播服务端,直播服务端将任务创建消息转发至任务中心。
130.其中,主播通过主播客户端,基于任务模板配置目标任务的具体信息,例如,任务模板是动作类模板,主播可以配置具体的动作(如关注和评论)、完成条件(如评论某一设定内容),以及完成任务的奖励(如某一数额的电子红包)。
131.704、任务中心,响应于所述任务创建消息,创建目标任务。
132.进一步地,若主播客户端需要查询目标任务的完成进度时,还可以执行:
133.705、主播客户端,发送任务进度查询消息至直播服务端,直播服务端将任务进度查询消息转发至任务中心。
134.706、任务中心,响应于任务进度查询消息,查询目标任务的完成进度信息,并通过直播服务端反馈给主播客户端。
135.另外,主播客户端还可以根据需要查询目标任务。
136.本实施例中,通过查询任务模板,基于任务模板创建目标任务,根据实际需求查询目标任务及其完成进度,可以实现针对任务发布客户端的任务处理流程。
137.图8是根据本公开第四实施例的示意图,本实施例提供一种任务处理方法,本实施例以业务客户端为观众客户端为例。如图8所示,本实施例提供的任务处理方法包括:
138.801、主播客户端,发送任务查询消息至直播服务端,直播服务端将任务查询消息转发至任务中心。
139.其中,如上一实施例所示,主播客户端可以基于任务模板触发任务中心创建目标任务。
140.802、任务中心,将目标任务通过直播服务端反馈给观众客户端。
141.其中,目标任务可以以任务列表的形式反馈给观众客户端。
142.803、观众客户端,发送任务上报消息至直播服务端,直播服务端将任务上报消息转发至任务中心。
143.其中,观众在完成目标任务所要求的动作后,可以通过任务上报消息所完成的动作的信息。
144.804、任务中心,响应于所述任务上报消息,确定目标任务的完成进度信息。
145.进一步地,若主播客户端需要查询目标任务的完成进度时,还可以执行:
146.805、观众客户端,发送任务进度查询消息至直播服务端,直播服务端将任务进度查询消息转发至任务中心。
147.806、任务中心,响应于任务进度查询消息,查询目标任务的完成进度信息,并通过直播服务端反馈给观众客户端。
148.本实施例中,通过查询目标任务,上报目标任务的完成情况,根据实际需求查询目标任务的完成进度,可以实现针对任务执行客户端的任务处理流程。
149.图9是根据本公开第五实施例的示意图,本实施例提供一种任务处理装置。该装置可以应用于任务中心。如图9所示,该装置900包括:接收模块901、确定模块902和处理模块903。
150.接收模块901用于接收业务方发送的任务处理消息,所述任务处理消息用于处理目标任务,所述任务处理消息中包含所述业务方的标识信息;其中,所述业务方与所述任务中心分离设置;确定模块902用于基于所述业务方的标识信息,确定所述业务方对应的目标处理资源;其中,所述任务中心包括:多个业务方对应的处理资源,且,不同的业务方对应不同的处理资源;处理模块903用于采用所述目标处理资源,对所述目标任务进行处理。
151.本实施例中,业务方与任务中心分离设置,由任务中心处理目标任务,可以将任务处理相关功能从业务方分离出来,而不再集成在业务方内部,从而可以提高任务处理效率;通过不同的业务方具有不同的处理资源,可以实现不同业务方的任务之间的隔离,可以避免不同业务方之间的干扰问题,并且,由于不同业务方的任务之间是相互隔离的,可以并行处理多个业务方的任务,进一步提高任务处理效率。
152.一些实施例中,所述任务处理消息包括:任务创建消息;所述目标任务包括:父任务和子任务;所述处理模块903进一步用于:响应于所述任务创建消息,采用树形结构,依次创建所述父任务和所述子任务,其中,所述父任务对应所述树形结构中的父节点,所述子任务对应所述树形结构中的子节点。
153.本实施例中,采用树形结构管理父任务和子任务,可以实现多级任务的管理,并且,由于采用树形结构,可以节省存储资源,提高处理效率。
154.一些实施例中,所述目标任务被存储到所述任务中心的三级存储资源中,且所述三级存储资源按照优先级从高到低的顺序依次为:内存、非关系型数据库、关系型数据库;所述任务处理消息包括:任务查询消息;所述处理模块903进一步用于:响应于所述任务查询消息,按照所述优先级从高到低的顺序,依次在所述三级存储资源中,查询所述目标任务。
155.本实施例中,按照优先级顺序依次查询,可以优先在内存或缓存中查询目标任务,
由于内存或缓存的读写速度较快,因此,可以较快地响应任务查询消息,提高读写速度。
156.一些实施例中,所述装置900还包括:通知模块,用于采用异步方式,向所述业务方反馈所述目标任务的处理结果。
157.由于任务计算过程较为复杂,需要耗费较多的资源,本实施例中,通过采用异步方式反馈处理结果,可以将计算资源和通知资源分类,使得计算资源不再完成通知功能,从而降低计算资源的开销,提高任务计算效率。
158.一些实施例中,所述业务方包括:业务服务端和业务客户端;所述接收模块901进一步用于:接收所述业务服务端转发的任务处理消息,所述任务处理消息是所述业务客户端产生并发送至所述业务服务端的。
159.由于业务客户端的数量一般较多,本实施例中,通过业务服务端将业务客户端的任务处理消息转发至任务中心,可以由业务服务端对各自的业务客户端进行管理,保证各个业务方的功能独立性和安全性;并且,通过转发消息至任务中心,不需要业务服务端进行任务相关功能处理,可以使得业务服务端更集中在各自的业务功能上,提高业务处理效率。
160.一些实施例中,所述业务客户端包括:任务发布客户端;所述任务处理消息包括:任务模板查询消息、任务创建消息、任务进度查询消息;所述处理模块903进一步用于:响应于所述任务模板查询消息,查询所述业务方对应的任务模板,并将所述任务模板,通过所述业务服务端反馈给所述任务发布客户端;响应于所述任务创建消息,创建所述目标任务,其中,所述任务创建消息是所述任务发布客户端基于所述任务模板产生并发送至所述业务服务端的。
161.本实施例中,通过查询任务模板,基于任务模板创建目标任务,根据实际需求查询目标任务及其完成进度,可以实现针对任务发布客户端的任务处理流程。
162.一些实施例中,所述业务客户端包括:任务执行客户端;所述任务处理消息包括:任务查询消息和任务上报消息;所述处理模块903进一步用于:响应于所述任务查询消息,查询所述目标任务,并将所述目标任务通过所述业务服务端反馈给所述任务执行客户端;响应于所述任务上报消息,确定所述目标任务的完成进度信息,其中,所述任务上报消息是所述任务执行客户端基于所述目标任务的完成情况产生并发送至所述业务服务端的。
163.本实施例中,通过查询目标任务,上报目标任务的完成情况,根据实际需求查询目标任务的完成进度,可以实现针对任务执行客户端的任务处理流程。
164.可以理解的是,本公开实施例中,不同实施例中的相同或相似内容可以相互参考。
165.可以理解的是,本公开实施例中的“第一”、“第二”等只是用于区分,不表示重要程度高低、时序先后等。
166.本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
167.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。以及,本公开还提供了一种自动驾驶车辆,包括上述的电子设备。
168.图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本
文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
169.如图10所示,电子设备1000包括计算单元1001,其可以根据存储在只读存储器(rom)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(ram)1003中的计算机程序,来执行各种适当的动作和处理。在ram 1003中,还可存储电子设备1000操作所需的各种程序和数据。计算单元1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口10010也连接至总线1004。
170.电子设备1000中的多个部件连接至i/o接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许电子设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
171.计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如任务处理方法。例如,在一些实施例中,任务处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由rom 1002和/或通信单元1009而被载入和/或安装到电子设备1000上。当计算机程序加载到ram 1003并由计算单元1001执行时,可以执行上文描述的信息显示方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行任务处理方法。
172.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
173.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程地图控制装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
174.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计
算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
175.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的信息显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
176.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
177.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtual private server",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
178.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
179.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1