CN111209098A - 一种智能渲染调度方法、服务器、管理节点及存储介质 - Google Patents
一种智能渲染调度方法、服务器、管理节点及存储介质 Download PDFInfo
- Publication number
- CN111209098A CN111209098A CN201911320153.3A CN201911320153A CN111209098A CN 111209098 A CN111209098 A CN 111209098A CN 201911320153 A CN201911320153 A CN 201911320153A CN 111209098 A CN111209098 A CN 111209098A
- Authority
- CN
- China
- Prior art keywords
- rendering
- task
- farm
- farms
- tasks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种智能渲染调度方法、服务器、管理节点及存储介质,该方法包括:获取至少一个渲染任务;将至少一个渲染任务加入到任务池,并按照接收顺序进行排序;根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。通过该种方式,尽量避免某个农场渲染任务拥堵,而其他渲染农场处于空闲状态的情况发生。尽量维持渲染农场负载均衡的同时,避免个别渲染农场的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
Description
技术领域
本发明实施例涉及计算机技术领域,具体涉及一种智能渲染调度方法、服务器、管理节点及存储介质。
背景技术
渲染技术已经被大众所广泛应用,在执行渲染任务之前,用户首先会将待渲染任务上传自身终端对应的所属区域管辖范围内的农场进行渲染。如此操作将存在一定的弊端,例如:如果用户自身终端对应的所属区域管辖范围内的所有农场都处于忙碌状态,大量的渲染任务处于拥塞状态,均在等待被执行。
那么,用户如果此时将自己的渲染任务切换到其他区域的农场进行渲染,必然要重新上传任务至其他农场。如果任务量大,必然又要消耗大部分时间进行上传。而且,即使上传成功到其他的区域,也不能保证其他区域此时不存在渲染任务拥堵的现象再次发生。
如此一来,不仅仅降低了用户的体验度,还可能因为渲染任务的工作效率低下,影响用户的后续工作进展。
那么,如何才能够尽量避免渲染任务拥堵,提升用户体验度和工作效率,成为本申请所要解决的技术问题。
发明内容
为此,本发明实施例提供一种智能渲染调度方法、服务器、管理节点及存储介质,以解决现有技术中渲染任务拥堵,导致渲染任务的工作效率低下,降低用户体验度的技术问题。
为了实现上述目的,本发明实施例提供如下技术方案:
根据本发明实施例的第一方面,提供了一种智能渲染调度方法,该方法包括:
获取至少一个渲染任务;
将至少一个渲染任务加入到任务池,并按照接收顺序进行排序;
根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,以便接收到第一渲染任务的渲染农场与上传第一渲染任务的终端建立通信连接,获取待渲染对象并执行,其中,第一渲染任务为任务池中存储的渲染任务。
进一步地,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,具体包括:
分别获取每一个渲染农场当前的系统资源占用率;
根据系统资源占用率,对所有渲染农场进行排序;
优先为排序顺序靠前的渲染农场分配任务池中的渲染任务,其中,系统资源占用率越小,排序顺序越靠前。
进一步地,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,具体包括:
分别预测每一个渲染农场执行一个渲染任务所需时间;
并根据预测的每一个渲染农场执行一个渲染任务时间,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,其中执行一个渲染任务所需时间越小,则越优先分配渲染任务。
进一步地,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场之后,方法还包括:
实时监听每一个渲染农场的心跳信号;
当监听到任一个渲染农场的心跳信号异常时,确定心跳信号异常的渲染农场发生故障;
将发生故障的渲染农场的所有未完成的渲染任务全部调回任务池,以便后续将已经调回的渲染任务均衡分配到未发生故障的渲染农场。
进一步地,每一个渲染农场分别包括至少一个子节点;根据不同渲染农场的任务执行程度,将渲染任务均衡分配到不同的渲染农场之后,方法还包括:
根据每一个渲染农场的任务执行程度,确定动态开启或者关闭至少一个渲染农场;或者,动态开启或者关闭至少一个渲染农场中的部分子节点。
进一步地,当为第一渲染任务分配的第一渲染农场并非为上传第一渲染任务的终端所属区域的渲染农场时,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场之前,方法还包括:
向上传第一渲染任务的终端反馈渲染单价,渲染单价为第一渲染农场对应的渲染单价;
在接收到终端反馈的确认信息后,将第一渲染任务分配到第一渲染农场;否则,将第一渲染任务分配到用户指定的渲染农场进行渲染或者分配到上传第一渲染任务的终端所属区域的渲染农场进行渲染。
根据本发明实施例的第二方面,提供了一种智能渲染调度方法,该方法由渲染农场中的管理节点执行,包括:
接收服务器分配的至少一个渲染任务;
确定渲染农场中每一个子节点的负载情况;
根据不同子节点的负载情况,将至少一个渲染任务均衡分配给不同的子节点,以便接收到第一渲染任务的子节点与上传第一渲染任务的终端建立通信连接,获取与第一渲染任务对应的待渲染的对象进行渲染,其中,第一渲染任务为至少一个渲染任务中的任一个渲染任务。
进一步地,管理节点分别与渲染农场中除管理节点之外的子节点建立通信连接;
实时监听每一个子节点的心跳信号;
当确定第一子节点的心跳信号发生异常时,确定第一子节点发生故障;
向服务器反馈第一子节点发生故障的情况,以便服务器将第一子节点所有未完成的渲染任务全部调回。
根据本发明实施例的第三方面,提供了一种服务器,该服务器包括:
存储器用于存储一个或多个程序指令;
处理器,用于运行一个或多个程序指令,用以执行如第一方面所介绍的一种智能渲染调度方法中的任一方法步骤。
根据本发明实施例的第四方面,提供了一种管理节点,该管理节点为渲染农场中的管理节点,包括:
处理器和存储器;
存储器用于存储一个或多个程序指令;
处理器,用于运行一个或多个程序指令,用以执行如第二方面所介绍的一种智能渲染调度方法中的任一方法步骤。
根据本发明实施例的第五方面,提供了一种计算机存储介质,该计算机存储介质中包含一个或多个程序指令,一个或多个程序指令用于被一种服务器执行如上第一方面所介绍的一种智能渲染调度方法中的任一方法步骤。
根据本发明实施例的第六方面,提供了一种计算机存储介质,该计算机存储介质中包含一个或多个程序指令,一个或多个程序指令用于被一种管理节点执行如上第二方面所介绍的一种智能渲染调度方法中的任一方法步骤。
本发明实施例具有如下优点:渲染任务分配到不同区域的渲染农场时,并非由用户自行设定。而是统一通过服务器执行调度和分配。服务器在获取到渲染任务后,首先按照接收顺序加入到任务池中。然后,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。通过该种方式,尽量避免某个农场渲染任务拥堵,而其他渲染农场处于空闲状态的情况发生。尽量维持渲染农场负载均衡的同时,避免个别渲染农场的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
图1为本发明实施例1提供的一种智能渲染调度方法流程示意图;
图2为本发明实施例2提供的另一种智能渲染调度方法流程示意图;
图3为本发明实施例3提供的一种智能渲染调度装置结构示意图;
图4为本发明实施例4提供的另一种智能渲染调度装置结构示意图;
图5为本发明实施例5提供的一种服务器结构示意图;
图6为本发明实施例6提供的一种管理节点结构示意图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在介绍本发明实施例提供的智能渲染方法之前,首先先介绍一下智能渲染调度系统架构。可以包括:服务器、终端和至少一个渲染农场。每一个渲染农场中包括管理节点和其他子节点。管理节点和子节点均由计算机构成。也即是,渲染农场由计算机集群构成。
在具体实现时,渲染任务将由用户通过自身所属的终端设备上传至服务器。由服务器将渲染任务按照接收的顺序先后加入到任务池中。然后再根据负载均衡原则,将任务池中的任务分发到不同的渲染农场。渲染农场中的管理节点在接收到任务后,再根据不同子节点的负载情况,将接收到的渲染任务分配到不同的子节点上。接收到渲染任务的子节点会向上传渲染任务的终端调取渲染对象,根据渲染任务进行渲染。这里的管理节点可以理解为渲染农场的计算机集群中的调度中心,子节点则为调度中心控制的计算机。下文中,将以不同的角度说明智能渲染调度方法。在实施例1中,将以服务器的角度说明。在实施例2中,将以管理节点的角度进行说明。具体参见如下:
本发明实施例1提供了一种智能渲染调度方法,具体如图1所示,该方法由服务器执行,步骤如下:
步骤110,获取至少一个渲染任务。
具体的,不同的用户会将自己的渲染任务通过终端上传至服务器。所以,同一时刻可能有多个用户同时上传渲染任务至服务器,也即是服务器可能接收到一个或多个渲染任务。
步骤120,将至少一个渲染任务加入到任务池,并按照接收顺序进行排序。
虽然,用户同时上传渲染任务,但是由于不同区域的网络通信状况不同,所以渲染任务被服务器接收到的时刻就存在一定的差异。服务器会根据接收到渲染任务的时刻作为排序的依据,按照接收顺序对渲染任务进行排序。
步骤130,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。
具体的,依据负载均衡原则为不同的渲染农场分配渲染任务。具体的,就是从任务池中按照排序顺序,依次将渲染任务分配到不同的渲染农场。
在具体执行时,可以通过两种方式确定优先为哪个渲染农场分配任务。
第一种方式:确定每一个渲染农场当前的系统资源占用情况。
在具体执行时,首先,分别获取每一个渲染农场当前的系统资源占用率;
根据系统资源占用率,对所有渲染农场进行排序;
优先为排序顺序靠前的渲染农场分配任务池中的渲染任务,其中,系统资源占用率越小,排序顺序越靠前。
也即是,考虑到系统资源占用率越高,处理渲染任务的时间可能就更长,这样一来很容易造成渲染任务的拥塞现象。因此,最好是为占用系统资源越小的渲染农场分配更多的渲染任务。而占用系统资源越大的渲染农场则考虑先少分配一些渲染任务。
第二种方式,预测渲染农场执行一个渲染任务时间。
在具体执行时,首先,分别预测每一个渲染农场执行一个渲染任务所需时间;
并根据预测的每一个渲染农场执行一个渲染任务时间,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,其中执行一个渲染任务所需时间越小,则越优先分配渲染任务。
也即是,当一个渲染农场渲染一个任务所占用的时间越短,说明该渲染农场渲染速率越高,则可以多分配一些渲染任务,用以减少其他渲染农场的负载。从而达到负载均衡。
在接收到第一渲染任务的渲染农场会与上传第一渲染任务的终端建立通信连接,获取待渲染对象并执行。其中,第一渲染任务为任务池中的存储的渲染任务。
可选的,在服务器将渲染任务分配到不同的渲染农场后,该方法还包括:
实时监听当前处于工作状态的渲染农场的心跳信号。这样做的目的在于,时刻可以监测渲染农场的工作状态。一旦确定某一个渲染农场的心跳信号异常,则可以确定心跳信号异常的渲染农场发生了故障。此时,就需要将发生故障的渲染农场中正在执行,以及未执行的所有渲染任务全部调回任务池。并按照顺序将这些任务进行排序,以便于后续再将这些渲染任务均衡分配到其他未发生故障的渲染农场。
可选的,每一个渲染农场包括至少一个子节点。该方法还可以包括:根据每一个渲染农场的任务执行程度,确定动态开启或者关闭至少一个渲染农场。或者,动态开启或者关闭至少一个渲染农场中的部分子节点。
也即是说,考虑到资源节约,降低工作成本。再渲染任务很少的情况下,实际上并不需要太多的渲染农场或者不需要渲染农场中的全部子节点开启工作。他们处于开启状态不执行工作的话,必然是资源的浪费。又或者,可能某一时刻有很多渲染任务需要执行,就需要开启更多的渲染农场或者渲染农场中的子节点。因此,可以根据不同渲染农场的任务执行程度,动态的开启或者至少一个渲染农场;或者,动态开启或者关闭至少一个渲染农场中的部分子节点。
可选的,上文中说的是服务器自由调度渲染任务至不同的渲染农场。而不需要考虑到上传渲染任务的终端所属的区域。通过这种方式减少渲染任务拥塞,避免了渲染资源浪费情况发生,充分利用不同渲染农场的情况,分配相应的渲染任务,保证渲染效率。
但是,在某些特殊情况中,可能不同的区域的渲染农场执行渲染任务的费用不同。例如渲染任务执行较快的渲染农场可能收费更高一些。当存在这种情况下,还需要执行如下方法,即在步骤130之前,还包括:
向上传第一渲染任务的终端反馈渲染单价,渲染单价为第一渲染农场对应的渲染单价;
在接收到终端反馈的确认信息后,将第一渲染任务分配到第一渲染农场;否则,将第一渲染任务分配到用户指定的渲染农场进行渲染或者分配到上传第一渲染任务的终端所属区域的渲染农场进行渲染。
也即是说,如果用户有指定的渲染农场,则分配到用户指定的渲染农场进行渲染,这里的指定不仅仅单纯的至具体的某个渲染农场。也可以是用户执行渲染单价或者单价范围,服务器根据渲染单价或单价范围匹配相应的渲染农场,当然,匹配的过程中同样会考虑负载均衡的情况。在用户没有指定的情况下,则分配到上传第一渲染任务的终端所属区域的渲染农场进行渲染。
本发明实施例提供的一种智能渲染调度方法,渲染任务分配到不同区域的渲染农场时,并非由用户自行设定。而是统一通过服务器执行调度和分配。服务器在获取到渲染任务后,首先按照接收顺序加入到任务池中。然后,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。通过该种方式,尽量避免某个农场渲染任务拥堵,而其他渲染农场处于空闲状态的情况发生。尽量维持渲染农场负载均衡的同时,避免个别渲染农场的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例1对应的,本发明实施例2还提供了另一种智能渲染调度方法,该方法由渲染农场中的管理节点执行。这里的渲染农场可以指的是实施例1中至少一个渲染农场中的任一个渲染农场。当某一个渲染农场接收到渲染任务后,执行的如下方法。
具体包括:
步骤210,接收服务器分配的至少一个渲染任务。
步骤220,确定渲染农场中每一个子节点的负载情况。
实际上,确定渲染农场中每一个子节点的负载情况与实施例1中确定每一个渲染农场的负载情况的方式类似。同样可以分为两种方式,其中一种为确定每一个子节点当前的系统资源占用情况。第二种方式,预测每一个子节点执行一个渲染任务时间。
具体的确定方式同上一个实施例,只是针对的对象为子节点,而不是渲染农场。具体实现方式参见实施例1,这里不做过多说明。
步骤230,根据不同子节点的负载情况,将至少一个渲染任务均衡分配给不同的子节点。
具体的分配原理同实施例1将渲染任务分配给不同渲染农场的原理类似,这里不做过多说明。通过该种方式,可以方便接收到第一渲染任务的子节点与上传第一渲染任务的终端建立通信连接,获取与第一渲染任务对应的待渲染的对象进行渲染,其中,第一渲染任务为至少一个渲染任务中的任一个渲染任务。
可选的,管理节点在于渲染农场中除管理节点外的其他子节点建立通信连接后,还包括实时监听每一个子节点的心跳信号。
当确定第一当确定第一子节点的心跳信号发生异常时,确定第一子节点发生故障;
向服务器反馈第一子节点发生故障的情况,以便服务器将第一子节点所有未完成的渲染任务全部调回。
这样做的目的在于,管理节点时刻可以监测子节点的工作状态。一旦确定某一个子节点的心跳信号异常,则可以确定心跳信号异常的子节点发生了故障。此时,就需要将发生故障的子节点的情况告知服务器。由服务器将发生故障的子节点中正在执行,以及未执行的所有渲染任务全部调回至任务池。并按照顺序将这些任务进行排序,以便于后续再将这些渲染任务均衡分配到其他渲染农场,或者该子节点所属的渲染农场中未发生故障的子节点。
本发明实施例提供的一种智能渲染调度方法,渲染任务被分配到某一个渲染农场后,渲染农场中的管理节点同样需要根据负载均衡原则,将渲染任务分配到不同的子节点。通过该种方式,尽量避免某个子节点渲染任务拥堵,而其他子节点处于空闲状态的情况发生。尽量维持渲染农场中所有子节点负载均衡的同时,避免个别子节点的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例1对应的,本发明实施例3还提供了一种智能渲染调度装置,具体如图3所示,该装置包括:获取单元301和处理单元302。
获取单元301,用于获取至少一个渲染任务;
处理单元302,用于将至少一个渲染任务加入到任务池,并按照接收顺序进行排序;
根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,以便接收到第一渲染任务的渲染农场与上传第一渲染任务的终端建立通信连接,获取待渲染对象并执行,其中,第一渲染任务为任务池中存储的渲染任务。
可选的,处理单元302具体用于,分别获取每一个渲染农场当前的系统资源占用率;
根据系统资源占用率,对所有渲染农场进行排序;
优先为排序顺序靠前的渲染农场分配任务池中的渲染任务,其中,系统资源占用率越小,排序顺序越靠前。
可选的,处理单元302具体用于,分别预测每一个渲染农场执行一个渲染任务所需时间;
并根据预测的每一个渲染农场执行一个渲染任务时间,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,其中执行一个渲染任务所需时间越小,则越优先分配渲染任务。
可选的,该装置还包括:监听单元303,用于实时监听每一个渲染农场的心跳信号;
处理单元302还用于,当监听到任一个渲染农场的心跳信号异常时,确定心跳信号异常的渲染农场发生故障;将发生故障的渲染农场的所有未完成的渲染任务全部调回任务池,以便后续将已经调回的渲染任务均衡分配到未发生故障的渲染农场。
可选的,处理单元302还用于,根据每一个渲染农场的任务执行程度,确定动态开启或者关闭至少一个渲染农场;或者,动态开启或者关闭至少一个渲染农场中的部分子节点。
可选的,该装置还包括:发送单元304和接收单元305。
发送单元304,用于当为第一渲染任务分配的第一渲染农场并非为上传第一渲染任务的终端所属区域的渲染农场时,向上传第一渲染任务的终端反馈渲染单价,渲染单价为第一渲染农场对应的渲染单价;
接收单元305,用于接收到终端反馈的确认信息或者渲染农场指定的信息。
处理单元302,还用于在接收到终端反馈的确认信息后,将第一渲染任务分配到第一渲染农场;否则,将第一渲染任务分配到用户指定的渲染农场进行渲染或者分配到上传第一渲染任务的终端所属区域的渲染农场进行渲染。
本发明实施例提供的一种智能渲染调度装置中各部件所执行的功能均已在上述实施例1中做了详细介绍,因此这里不做过多赘述。
本发明实施例提供的一种智能渲染调度装置,渲染任务分配到不同区域的渲染农场时,并非由用户自行设定。而是统一通过服务器执行调度和分配。服务器在获取到渲染任务后,首先按照接收顺序加入到任务池中。然后,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。通过该种方式,尽量避免某个农场渲染任务拥堵,而其他渲染农场处于空闲状态的情况发生。尽量维持渲染农场负载均衡的同时,避免个别渲染农场的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例2对应的,本发明实施例4还提供了另一种智能渲染调度装置,具体如图4所示,该装置包括:接收单元401和处理单元402。
接收单元401,用于接收服务器分配的至少一个渲染任务;
处理单元402,用于确定渲染农场中每一个子节点的负载情况;
根据不同子节点的负载情况,将至少一个渲染任务均衡分配给不同的子节点,以便接收到第一渲染任务的子节点与上传第一渲染任务的终端建立通信连接,获取与第一渲染任务对应的待渲染的对象进行渲染,其中,第一渲染任务为至少一个渲染任务中的任一个渲染任务。
可选的,该装置还包括监听单元403和发送单元404。
监听单元403用于实时监听每一个子节点的心跳信号;
处理单元402还用于,当确定第一子节点的心跳信号发生异常时,确定第一子节点发生故障;
发送单元404,用于向服务器反馈第一子节点发生故障的情况,以便服务器将第一子节点所有未完成的渲染任务全部调回。
本发明实施例提供的一种智能渲染调度装置中各部件所执行的功能均已在上述实施例2中做了详细介绍,因此这里不做过多赘述。
本发明实施例提供的另一种智能渲染调度装置,渲染任务被分配到某一个渲染农场后,渲染农场中的管理节点同样需要根据负载均衡原则,将渲染任务分配到不同的子节点。通过该种方式,尽量避免某个子节点渲染任务拥堵,而其他子节点处于空闲状态的情况发生。尽量维持渲染农场中所有子节点负载均衡的同时,避免个别子节点的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例1相对应的,本发明实施例5还提供了一种服务器,具体如图5所示,该服务器包括:处理器501和存储器502;
存储器502用于存储一个或多个程序指令;
处理器501,用于运行一个或多个程序指令,用以执行如上实施例所介绍的一种智能渲染调度方法中的任一方法步骤。
本发明实施例提供的一种智能渲染调度系统,渲染任务分配到不同区域的渲染农场时,并非由用户自行设定。而是统一通过服务器执行调度和分配。服务器在获取到渲染任务后,首先按照接收顺序加入到任务池中。然后,根据不同渲染农场的任务执行程度,将任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场。通过该种方式,尽量避免某个农场渲染任务拥堵,而其他渲染农场处于空闲状态的情况发生。尽量维持渲染农场负载均衡的同时,避免个别渲染农场的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例1相对应的,本发明实施例6还提供了一种管理节点,具体如图6所示,该管理节点包括:处理器601和存储器602;
存储器602用于存储一个或多个程序指令;
处理器601,用于运行一个或多个程序指令,用以执行如上实施例所介绍的一种智能渲染调度方法中的任一方法步骤。
本发明实施例提供的一种智能渲染调度系统,渲染任务被分配到某一个渲染农场后,渲染农场中的管理节点同样需要根据负载均衡原则,将渲染任务分配到不同的子节点。通过该种方式,尽量避免某个子节点渲染任务拥堵,而其他子节点处于空闲状态的情况发生。尽量维持渲染农场中所有子节点负载均衡的同时,避免个别子节点的资源浪费。通过该种智能调度方式,还可以大大提升渲染任务的完成效率,减少用户等待时间,大大提升用户体验度。
与上述实施例相对应的,本发明实施例7还提供了一种计算机存储介质,该计算机存储介质中包含一个或多个程序指令。其中,一个或多个程序指令用于被实施例5所介绍的一种服务器执行如上实施例1所介绍的一种智能渲染调度方法。
与上述实施例相对应的,本发明实施例8还提供了一种计算机存储介质,该计算机存储介质中包含一个或多个程序指令。其中,一个或多个程序指令用于被实施例6所介绍的一种管理节点执行如上实施例2所介绍的另一种智能渲染调度方法。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
Claims (10)
1.一种智能渲染调度方法,其特征在于,所述方法由服务器执行,包括:
获取至少一个渲染任务;
将所述至少一个渲染任务加入到任务池,并按照接收顺序进行排序;
根据不同渲染农场的任务执行程度,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,以便接收到第一渲染任务的渲染农场与上传所述第一渲染任务的终端建立通信连接,获取待渲染对象并执行,其中,所述第一渲染任务为所述任务池中存储的渲染任务。
2.根据权利要求1所述的方法,其特征在于,所述根据不同渲染农场的任务执行程度,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,具体包括:
分别获取每一个渲染农场当前的系统资源占用率;
根据所述系统资源占用率,对所有渲染农场进行排序;
优先为排序顺序靠前的渲染农场分配任务池中的渲染任务,其中,系统资源占用率越小,排序顺序越靠前。
3.根据权利要求1所述的方法,其特征在于,所述根据不同渲染农场的任务执行程度,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,具体包括:
分别预测每一个渲染农场执行一个渲染任务所需时间;
并根据预测的每一个渲染农场执行一个渲染任务所述时间,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场,其中执行一个渲染任务所需时间越小,则越优先分配渲染任务。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据不同渲染农场的任务执行程度,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场之后,所述方法还包括:
实时监听每一个渲染农场的心跳信号;
当监听到任一个渲染农场的心跳信号异常时,确定所述心跳信号异常的渲染农场发生故障;
将发生故障的渲染农场的所有未完成的渲染任务全部调回所述任务池,以便后续将已经调回的渲染任务均衡分配到未发生故障的渲染农场。
5.根据权利要求1-3任一项所述的方法,其特征在于,每一个渲染农场分别包括至少一个子节点;所述根据不同渲染农场的任务执行程度,将渲染任务均衡分配到不同的渲染农场之后,所述方法还包括:
根据每一个渲染农场的任务执行程度,确定动态开启或者关闭至少一个渲染农场;或者,动态开启或者关闭至少一个渲染农场中的部分子节点。
6.根据权利要求1-3任一项所述的方法,其特征在于,当为第一渲染任务分配的第一渲染农场并非为上传所述第一渲染任务的终端所属区域的渲染农场时,所述根据不同渲染农场的任务执行程度,将所述任务池中的渲染任务按照排序依次均衡分配到不同的渲染农场之前,所述方法还包括:
向上传所述第一渲染任务的终端反馈渲染单价,所述渲染单价为第一渲染农场对应的渲染单价;
在接收到所述终端反馈的确认信息后,将所述第一渲染任务分配到所述第一渲染农场;否则,将所述第一渲染任务分配到用户指定的渲染农场进行渲染或者分配到上传所述第一渲染任务的终端所属区域的渲染农场进行渲染。
7.一种智能渲染调度方法,其特征在于,所述方法由渲染农场中的管理节点执行,包括:
接收服务器分配的至少一个渲染任务;
确定所述渲染农场中每一个子节点的负载情况;
根据不同子节点的负载情况,将至少一个渲染任务均衡分配给不同的子节点,以便接收到第一渲染任务的子节点与上传所述第一渲染任务的终端建立通信连接,获取与第一渲染任务对应的待渲染的对象进行渲染,其中,所述第一渲染任务为所述至少一个渲染任务中的任一个渲染任务。
8.一种服务器,其特征在于,所述服务器包括:处理器和存储器;
所述存储器用于存储一个或多个程序指令;
所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1-6任一项所述的方法。
9.一种管理节点,其特征在于,所述管理节点为渲染农场中的管理节点,包括:
处理器和存储器;
所述存储器用于存储一个或多个程序指令;
所述处理器,用于运行一个或多个程序指令,用以执行如权利要求7或8所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于被一种服务器执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911320153.3A CN111209098A (zh) | 2019-12-19 | 2019-12-19 | 一种智能渲染调度方法、服务器、管理节点及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911320153.3A CN111209098A (zh) | 2019-12-19 | 2019-12-19 | 一种智能渲染调度方法、服务器、管理节点及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111209098A true CN111209098A (zh) | 2020-05-29 |
Family
ID=70785060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911320153.3A Pending CN111209098A (zh) | 2019-12-19 | 2019-12-19 | 一种智能渲染调度方法、服务器、管理节点及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111209098A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113157415A (zh) * | 2021-04-21 | 2021-07-23 | 中国电影科学技术研究所 | 农场渲染方法、装置、电子设备和存储介质 |
CN115858177A (zh) * | 2023-02-08 | 2023-03-28 | 成都数联云算科技有限公司 | 一种渲染机资源分配方法、装置、设备及介质 |
CN118042181A (zh) * | 2024-04-12 | 2024-05-14 | 腾讯科技(深圳)有限公司 | 视频渲染方法、装置、电子设备、计算机可读存储介质及计算机程序产品 |
CN118042181B (zh) * | 2024-04-12 | 2024-06-28 | 腾讯科技(深圳)有限公司 | 视频渲染方法、装置、电子设备、计算机可读存储介质及计算机程序产品 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100289803A1 (en) * | 2009-05-13 | 2010-11-18 | International Business Machines Corporation | Managing graphics load balancing strategies |
CN104572305A (zh) * | 2015-01-26 | 2015-04-29 | 赞奇科技发展有限公司 | 均衡负载的集群渲染任务调度方法 |
CN105446810A (zh) * | 2015-12-24 | 2016-03-30 | 赞奇科技发展有限公司 | 基于成本代价的多农场云渲染任务分发系统与方法 |
CN105975334A (zh) * | 2016-04-25 | 2016-09-28 | 深圳市永兴元科技有限公司 | 任务分布式调度方法及系统 |
-
2019
- 2019-12-19 CN CN201911320153.3A patent/CN111209098A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100289803A1 (en) * | 2009-05-13 | 2010-11-18 | International Business Machines Corporation | Managing graphics load balancing strategies |
CN104572305A (zh) * | 2015-01-26 | 2015-04-29 | 赞奇科技发展有限公司 | 均衡负载的集群渲染任务调度方法 |
CN105446810A (zh) * | 2015-12-24 | 2016-03-30 | 赞奇科技发展有限公司 | 基于成本代价的多农场云渲染任务分发系统与方法 |
CN105975334A (zh) * | 2016-04-25 | 2016-09-28 | 深圳市永兴元科技有限公司 | 任务分布式调度方法及系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113157415A (zh) * | 2021-04-21 | 2021-07-23 | 中国电影科学技术研究所 | 农场渲染方法、装置、电子设备和存储介质 |
CN113157415B (zh) * | 2021-04-21 | 2023-10-13 | 中国电影科学技术研究所 | 农场渲染方法、装置、电子设备和存储介质 |
CN115858177A (zh) * | 2023-02-08 | 2023-03-28 | 成都数联云算科技有限公司 | 一种渲染机资源分配方法、装置、设备及介质 |
CN115858177B (zh) * | 2023-02-08 | 2023-10-24 | 成都数联云算科技有限公司 | 一种渲染机资源分配方法、装置、设备及介质 |
CN118042181A (zh) * | 2024-04-12 | 2024-05-14 | 腾讯科技(深圳)有限公司 | 视频渲染方法、装置、电子设备、计算机可读存储介质及计算机程序产品 |
CN118042181B (zh) * | 2024-04-12 | 2024-06-28 | 腾讯科技(深圳)有限公司 | 视频渲染方法、装置、电子设备、计算机可读存储介质及计算机程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107087019B (zh) | 一种基于端云协同计算架构的任务调度方法及装置 | |
CN107688492B (zh) | 资源的控制方法、装置和集群资源管理系统 | |
CN113051075B (zh) | 一种Kubernetes智能化扩缩容的方法及装置 | |
CN106445675B (zh) | 一种b2b平台分布式应用调度与资源分配方法 | |
CN110350609B (zh) | Agv的充电管理方法及系统、设备和存储介质 | |
CN109471705A (zh) | 任务调度的方法、设备及系统、计算机设备 | |
WO2023011157A1 (zh) | 业务处理方法、装置、服务器、存储介质和计算机程序产品 | |
CN110221920B (zh) | 部署方法、装置、存储介质及系统 | |
CN106648900B (zh) | 基于智能电视的超算方法及系统 | |
CN109766172B (zh) | 一种异步任务调度方法以及装置 | |
CN112134964B (zh) | 控制器分配方法、计算机设备、存储介质及网络业务系统 | |
CN114780227B (zh) | 一种基于芯粒化网络处理器架构的任务调度映射方法及系统 | |
CN111209098A (zh) | 一种智能渲染调度方法、服务器、管理节点及存储介质 | |
CN115658311A (zh) | 一种资源的调度方法、装置、设备和介质 | |
CN114968601A (zh) | 一种按比例预留资源的ai训练作业的调度方法和调度系统 | |
CN114416355A (zh) | 资源调度方法、装置、系统、电子设备及介质 | |
CN114546646A (zh) | 处理方法和处理装置 | |
CN113760549A (zh) | 一种pod部署方法及装置 | |
CN117149445B (zh) | 一种跨集群负载均衡方法及装置、设备及存储介质 | |
CN105933136A (zh) | 一种资源调度方法及系统 | |
CN110955504B (zh) | 智能分配渲染任务的方法、服务器、系统及存储介质 | |
CN115629854A (zh) | 分布式任务调度方法、系统、电子设备和存储介质 | |
CN111556126B (zh) | 模型管理方法、系统、计算机设备和存储介质 | |
CN108540336A (zh) | 一种弹性伸缩调度方法和装置 | |
CN114546647A (zh) | 调度方法和调度装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |