CN110879749A - Scheduling method and scheduling device for real-time transcoding task - Google Patents

Scheduling method and scheduling device for real-time transcoding task Download PDF

Info

Publication number
CN110879749A
CN110879749A CN201811039143.8A CN201811039143A CN110879749A CN 110879749 A CN110879749 A CN 110879749A CN 201811039143 A CN201811039143 A CN 201811039143A CN 110879749 A CN110879749 A CN 110879749A
Authority
CN
China
Prior art keywords
transcoding
resource consumption
server
real
template
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.)
Granted
Application number
CN201811039143.8A
Other languages
Chinese (zh)
Other versions
CN110879749B (en
Inventor
许平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811039143.8A priority Critical patent/CN110879749B/en
Publication of CN110879749A publication Critical patent/CN110879749A/en
Application granted granted Critical
Publication of CN110879749B publication Critical patent/CN110879749B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5022Workload threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention discloses a scheduling method of a real-time transcoding task, which comprises the following steps: analyzing the identification of a transcoding template from the received real-time transcoding task, wherein the transcoding template comprises transcoding parameters for executing the real-time transcoding task; determining a preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template; acquiring resource consumption information of a plurality of transcoding servers; and determining the transcoding server executing the real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server. The invention also discloses corresponding computing equipment and a scheduling device of the real-time transcoding task.

Description

Scheduling method and scheduling device for real-time transcoding task
Technical Field
The invention relates to the technical field of video cloud processing, in particular to a scheduling method and a scheduling device for a real-time transcoding task.
Background
Real-time transcoding is a video transcoding technology which is developed at a high speed and is gradually and widely applied in recent years, and is suitable for scenes with high requirements on transcoding real-time performance, such as live video and the like, so that a user can watch transcoded videos suitable for various user terminals when watching live videos. At this time, the video transcoding system needs to schedule a large number of real-time transcoding tasks to different transcoding machines to instruct each transcoding machine to execute a corresponding real-time transcoding task. In the face of a large number of real-time transcoding tasks, how to effectively schedule transcoding machines and allocate the real-time transcoding tasks is very important.
In the existing scheduling algorithm, a task scheduling strategy is usually designed in advance, and when a scheduling server receives a real-time transcoding task, the scheduling server allocates the task according to the preset strategy. For example, one scheme is to set an upper limit on the number of tasks of each transcoding machine, but this scheme ignores the difference in resource consumption of different transcoding tasks, and may result in that some transcoding machines cannot fully utilize resources, and some transcoding machines are overloaded with resources, resulting in that real-time transcoding cannot be performed. For another example, whether to accept a new transcoding task is determined according to the real-time resource consumption of the transcoding machine, but this method does not consider the time change of the resource consumption of the transcoding task, and there is a possibility that the resource consumption of a certain transcoding task suddenly increases, and the load of the transcoding machine in which the transcoding task is located is too large to perform real-time transcoding.
In summary, there is a need for a scheduling scheme for real-time transcoding tasks, which improves the efficiency of real-time transcoding without wasting resources of the transcoding machine.
Disclosure of Invention
To this end, the present invention provides a scheduling method and a scheduling apparatus for a real-time transcoding task, in an attempt to solve or at least alleviate at least one of the above problems.
According to one aspect of the invention, a scheduling method of a real-time transcoding task is provided, which comprises the following steps: analyzing the identification of a transcoding template from the received real-time transcoding task, wherein the transcoding template comprises transcoding parameters for executing the real-time transcoding task; determining a preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template; acquiring resource consumption information of a plurality of transcoding servers; and determining the transcoding servers executing the real-time transcoding tasks according to the preset resource consumption values and the resource consumption information of the transcoding servers.
Optionally, in the scheduling method according to the present invention, the step of determining the preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template includes: acquiring historical resource consumption information when a real-time transcoding task is executed by using the transcoding template according to the identifier of the transcoding template; and determining a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information.
Optionally, in the scheduling method according to the present invention, the step of obtaining, according to the identifier of the transcoding template, historical resource consumption information when the transcoding template is used to execute the real-time transcoding task includes: generating a resource consumption information table according to resource consumption information of each transcoding server when executing the real-time transcoding task, wherein the resource consumption information table is used for storing the identification of each transcoding server, the identification of a transcoding template used when executing each real-time transcoding task and corresponding resource consumption information in an associated manner; and counting the resource consumption value corresponding to the transcoding template from the resource consumption information table to serve as historical resource consumption information of the transcoding template.
Optionally, in the scheduling method according to the present invention, the historical resource consumption information of the transcoding template further includes the number of times that the transcoding template appears in the resource consumption information table.
Optionally, in the scheduling method according to the present invention, the step of determining the preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information includes: if the occurrence frequency is greater than the threshold value, counting the maximum value of the resource consumption value under a first preset condition, and taking the maximum value as a preset resource consumption value corresponding to the transcoding template; and if the occurrence frequency is not more than the threshold value, setting an initial value as a preset resource consumption value corresponding to the transcoding template.
Optionally, in the scheduling method according to the present invention, after determining the transcoding server executing the real-time transcoding task, the method further includes the steps of: and associating and recording the preset resource consumption values corresponding to the transcoding server and the real-time transcoding task, and generating a scheduling information list.
Optionally, in the scheduling method according to the present invention, the step of obtaining resource consumption information of each transcoding server includes: and acquiring the real-time resource consumption value and the resource upper limit value of each transcoding server from the resource consumption information table.
Optionally, in the scheduling method according to the present invention, the step of obtaining the resource consumption information of each transcoding server further includes: and counting the sum of the preset resource consumption values corresponding to the transcoding servers from the scheduling information list to serve as the distributed resource values of the transcoding servers.
Optionally, in the scheduling method according to the present invention, the step of calculating the transcoding servers to be allocated according to the preset resource consumption value and the resource consumption information of each transcoding server includes: traversing each transcoding server, and obtaining the maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the distributed resource value of the transcoding server; and when the sum of the maximum resource consumption value and the preset resource consumption value of the transcoding server is not greater than the resource upper limit value of the transcoding server, taking the transcoding server as the transcoding server to be allocated.
According to another aspect of the present invention, there is provided a scheduling apparatus, including: the analysis unit is suitable for analyzing the identification of the transcoding template from the received real-time transcoding task, wherein the transcoding template comprises transcoding parameters for executing the real-time transcoding task; the computing unit is suitable for counting historical resource consumption information of the transcoding template according to the identifier of the transcoding template and determining a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information; and the scheduling unit is suitable for acquiring the resource consumption information of the plurality of transcoding servers, determining the transcoding server executing the real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server, and forwarding the real-time transcoding task to the transcoding server to execute the real-time transcoding task.
Optionally, in the scheduling apparatus according to the present invention, the historical resource consumption information of the transcoding template includes a resource consumption value corresponding to the transcoding template.
Optionally, in the scheduling apparatus according to the present invention, the historical resource consumption information of the transcoding template further includes the number of times the transcoding template appears in the resource consumption information table.
Optionally, in the scheduling apparatus according to the present invention, the calculating unit is further adapted to count a maximum value of the resource consumption value under a first preset condition when the number of times of occurrence of the transcoding template is greater than a threshold, and take the maximum value as a preset resource consumption value corresponding to the transcoding template; the calculation unit is further adapted to set an initial value as a preset resource consumption value corresponding to the transcoding template when the number of occurrences of the transcoding template is not greater than a threshold.
Optionally, in the scheduling apparatus according to the present invention, the scheduling unit is further adapted to associate and record the preset resource consumption values corresponding to the transcoding server and the real-time transcoding task, so as to generate the scheduling information list.
Optionally, in the scheduling apparatus according to the present invention, the resource consumption information of each transcoding server further includes a resource upper limit value of each transcoding server; and the scheduling unit is also suitable for counting the sum of the preset resource consumption values corresponding to the transcoding servers from the scheduling information list to serve as the distributed resource values of the transcoding servers.
Optionally, in the scheduling apparatus according to the present invention, the scheduling unit is further adapted to traverse each transcoding server, obtain a maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the allocated resource value of the transcoding server, and use the transcoding server as the transcoding server to be allocated when a sum of the maximum resource consumption value and a preset resource consumption value of the transcoding server is not greater than the resource upper limit value of the transcoding server.
The scheduling scheme of the real-time transcoding task has at least the following two advantages: the method comprises the steps that firstly, the resource consumption value of the real-time transcoding task (namely, the preset resource consumption value of the transcoding template) is predicted by collecting the historical resource consumption value of the transcoding template corresponding to the real-time transcoding task, and the accuracy of the prediction result is high; and secondly, when scheduling, a scheduling strategy is determined based on scheduling processing data of multiple dimensions (such as preset resource consumption values of real-time transcoding tasks, resource consumption information of each transcoding server, allocated resource values of each transcoding server and the like), so that the problem of uneven task distribution on the transcoding servers is well solved, and the utilization rate of the transcoding servers is improved.
Drawings
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings, which are indicative of various ways in which the principles disclosed herein may be practiced, and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description read in conjunction with the accompanying drawings. Throughout this disclosure, like reference numerals generally refer to like parts or elements.
Fig. 1 shows a schematic diagram of a scheduling system 100 for real-time transcoding tasks according to an embodiment of the invention;
FIG. 2 shows a schematic diagram of a computing device 200, according to one embodiment of the invention; and
fig. 3 shows a flow chart of a scheduling method 300 of a real-time transcoding task according to an embodiment of the invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
Fig. 1 shows a schematic diagram of a scheduling system 100 for real-time transcoding tasks according to an embodiment of the invention.
As shown in fig. 1, the scheduling system 100 is disposed in a live video cloud system, and is connected to a plurality of CDN nodes in the live video cloud system on one hand to receive real-time transcoding tasks for video streams from the CDN nodes, and on the other hand, to a plurality of transcoding servers in a transcoding server cluster to forward the real-time transcoding tasks to one of the transcoding servers, so that the transcoding server executes the real-time transcoding tasks on each video stream. According to one embodiment, the scheduling system 100 comprises an acquisition apparatus 110 and a scheduling apparatus 120 (arranged to be implemented by the acquisition server 110 and the scheduling server 120, respectively, in fig. 1). It should be noted that fig. 1 is only an example, and the present invention does not limit the number of CDN nodes or the number of transcoding servers. It should be noted that the concept of a video live cloud system is described as an example, and in fact, the present invention may be applied to other systems that schedule real-time transcoding tasks, which may have other names or concepts.
According to one implementation mode, when each transcoding server executes a real-time transcoding task, a transcoding template is firstly analyzed from the task. The transcoding template is a set of preset parameters, which is used to indicate the transcoding parameters used when performing the real-time transcoding task. And the transcoding server transcodes the video stream according to the transcoding parameters defined by the transcoding template so as to achieve the preset transcoding effect. In an embodiment according to the present invention, three types of transcoding parameters, namely, container, video and audio, are defined in the transcoding template, and specifically include transcoding parameters such as a container format, an encoding mode of a video, a video width and height, a video frame rate, an audio encoding mode, an audio sampling frequency, and a channel number. In addition, each transcoding template also has a corresponding identifier to uniquely identify the transcoding template. It should be noted that the description of the transcoding parameters herein is merely exemplary and embodiments of the present invention are not so limited.
According to an embodiment of the present invention, the acquisition server 110 may be composed of a plurality of servers or a single server. The acquisition server 110 is connected to a plurality of transcoding servers in order to acquire resource consumption information of each transcoding server from a cluster of transcoding servers. According to one embodiment, the resource consumption information collected by the collection server 110 includes: the real-time resource consumption value of each transcoding server when executing each real-time transcoding task, the resource upper limit value of each transcoding server and the real-time resource consumption value of each transcoding server. When collecting the resource consumption information, the collecting server 110 synchronously records the identifier of the transcoding template used by each real-time transcoding task, then generates a resource consumption information table, and stores the identifier of each transcoding server, the identifier of each transcoding template, and the corresponding resource consumption information (i.e., the real-time resource consumption value of each transcoding server, the resource upper limit value of each transcoding server, and the real-time resource consumption value of each transcoding server when executing each transcoding task) in an associated manner. One expression of the resource consumption information table is exemplarily shown as table 1, but is not limited thereto.
Table 1 resource consumption information presentation example
Figure BDA0001791668510000061
The scheduling server 120 may also be composed of a plurality of servers or a single server according to an embodiment of the present invention. The scheduling server 120 is connected to the CDN nodes, the acquisition server 110, and each transcoding server. The dispatch server 120 receives the real-time transcoding task from the CDN node, acquires resource consumption information of each transcoding server from the acquisition server 110, determines a transcoding server most suitable for executing the current real-time transcoding task through dispatch calculation, and finally forwards the real-time transcoding task to the corresponding transcoding server. According to one embodiment, the scheduling server 120 includes: parsing unit 122, calculation unit 124 and scheduling unit 126.
The components of the dispatch server 120 are further described below.
The parsing unit 122 parses out the identification of the transcoding template from the received real-time transcoding task.
The calculation unit 124 counts the historical resource consumption information of the transcoding template from the resource consumption information table of the acquisition server 110 according to the identifier of the transcoding template. Taking the content shown in table 1 as an example, assuming that the identifier of the parsed transcoding template is 2a, the historical resource consumption information obtained by the computing unit 124 from the resource consumption information table includes: transcoding template 2a is employed when transcoding server S01 executes real-time transcoding task B, with a resource consumption value (i.e., the real-time resource consumption value associated with that transcoding template when executing the real-time transcoding task) of 210; the transcoding template 2a is used when the transcoding server S02 executes the real-time transcoding task P, and has a resource consumption value of 200. The calculating unit 124 determines a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information. According to one embodiment, the calculating unit 124 selects the largest resource consumption value from the historical resource consumption information as the preset resource consumption value.
In a preferred embodiment, the historical resource consumption information obtained by the calculation unit 124 further includes the number of times that the transcoding template appears in the resource consumption information table, considering the influence of the number of collected samples on the accuracy of predicting the resource consumption value of the transcoding template. When the number of times of occurrence of the transcoding template is greater than the threshold, the calculating unit 124 counts the maximum value of the resource consumption value under the first preset condition, and takes the maximum value as the preset resource consumption value corresponding to the transcoding template. When the number of times of occurrence of the transcoding template is not greater than the threshold, the calculating unit 124 sets an initial value as a preset resource consumption value corresponding to the transcoding template. According to the embodiment of the present invention, the threshold value can be flexibly set according to the length of the operation time of the scheduling system 100. The threshold value may be set slightly smaller, even directly to 0, at the beginning of the run, so that if the transcoding template is never executed in the system, the initial value is taken as the preset resource consumption value. The initial value may be a pre-specified empirical value, which may be set in any of the following ways according to some embodiments. For example, an initial value is set with reference to the preset resource consumption values of other transcoding templates (without being limited thereto, the maximum value, the average value, and the like of the preset resource consumption values of other transcoding templates), and for example, a transcoding task is executed by using the transcoding template to obtain the resource consumption value by simulating the online environment offline, and the resource consumption value is set as the initial value. The embodiments of the present invention are not so limited. If the transcoding template is executed in the system, the maximum value of the corresponding resource consumption value under the first preset condition is counted, in an embodiment, the first preset condition is set as that under most conditions (e.g., 99%) and, assuming that the counted corresponding resource consumption value is less than M under 99%, then M is taken as the corresponding preset resource consumption value. It should be noted that the present invention is not limited to determining the preset resource consumption value in the above 99% of cases, and may select a suitable preset resource consumption value according to the actual situation, as long as it is ensured that the actually consumed resource value of the transcoding template will be smaller than the preset resource consumption value under the high probability.
The scheduling unit 126 then obtains the resource consumption information of each transcoding server from the resource consumption information table, and determines the transcoding server executing the real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server, so as to forward the real-time transcoding task to the transcoding server to execute the real-time transcoding task. Determining a scheduling policy of a transcoding server executing a certain real-time transcoding task is: the sum of the real-time resource consumption value of the transcoding server and the preset resource consumption value of the current transcoding template should be smaller than the resource upper limit value of the transcoding server, so as to ensure that each transcoding server cannot perform real-time transcoding due to the fact that the tasks are distributed too heavily under most conditions.
According to one embodiment, the scheduling server 120 further stores a scheduling information list. Each time the real-time transcoding task is forwarded to the transcoding server, the scheduling unit 126 may further associate and record (an identifier of) the transcoding server executing the real-time transcoding task and a preset resource consumption value corresponding to the real-time transcoding task as a record in the scheduling information list. In some preferred embodiments, when confirming the transcoding server executing the real-time transcoding task, the scheduling unit 126 may count a sum of all preset resource consumption values corresponding to each transcoding server from the scheduling information list, as an allocated resource value of each transcoding server (in some embodiments, the preset resource consumption values, resource consumption information, allocated resource values, and the like used by the scheduling unit 126 when scheduling the task are collectively referred to as "scheduling processing data"). In this way, the scheduling unit 126 traverses each transcoding server, and obtains the maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the allocated resource value of the transcoding server. Optionally, the real-time resource consumption value of the transcoding server is compared with the allocated resource value, and a larger value is selected as the maximum resource consumption value.
Several algorithms for determining transcoding servers using scheduled processing data are shown below. It should be noted that the embodiments of the present invention are intended to provide a concept and a scheduling policy for determining a transcoding server to be scheduled from a transcoding server cluster by using the scheduling processing data, and the embodiments of the present invention only exemplify several specific computing processes, and those skilled in the art can design different specific algorithms based on the scheduling policy and the scheduling processing data to adapt to different application scenarios, which are within the scope of the present invention.
(1) In one embodiment of the invention, the sum of the maximum resource consumption value and the preset resource consumption value of the transcoding server is calculated, and when the sum of the maximum resource consumption value and the preset resource consumption value is not greater than the resource upper limit value of the transcoding server, the transcoding server is determined to be the transcoding server to be allocated.
Assuming that the preset resource consumption q of a real-time transcoding task is 150, the transcoding server cluster includes 3 transcoding servers, which are respectively denoted as S1, S2, and S3. Information such as resource consumption information of these 3 transcoding servers is shown in table 2.
Table 2 scheduling process data example of transcoding server (S1, S2, S3)
Figure BDA0001791668510000091
And sequentially calculating whether each transcoding server meets the condition or not according to the scheduling calculation mode. In S1, Qa is the larger of Qp (1500) and Qr (1260), that is, Qa is 1500, Qa + q is 1650, and the upper limit value Qmax of the allowed resource of S1 is 1600, so S1 does not satisfy the condition, and the process proceeds to S2 for calculation. For S2, Qa is the larger of Qp (1300) and Qr (990), that is, Qa is 1300, Qa + q is 1450, and the allowed resource upper limit Qmax of S2 is 1600, so S2 satisfies the condition, and the scheduling calculation is ended. The dispatch server 120 will dispatch this real-time transcoding task to the transcoding server S2.
For the sake of comparison, the maximum resource consumption Qa is also counted in table 2. It should be noted that, in a specific implementation process, after the maximum resource consumption value Qa of one transcoding server is calculated, whether the sum of the Qa of the transcoding server and the preset resource consumption value q is not greater than the resource upper limit value Qmax may be calculated, if the condition is met, the transcoding server is directly determined to be the transcoding server to be allocated, and the maximum resource consumption value Qa of the subsequent transcoding server does not need to be calculated. Therefore, the calculation amount of the scheduling server 120 can be reduced, and the efficiency of scheduling tasks is effectively improved.
(2) In another embodiment according to the present invention, the maximum resource consumption value Qa of all the transcoding servers in the transcoding server cluster may also be calculated, the transcoding server with the minimum Qa value is determined, and then the real-time transcoding task is directly scheduled to the transcoding server with the minimum Qa. This scheduling calculation may make the utilization of all transcoding servers more even. This computational approach may be used to schedule real-time transcoding tasks early in the operation of the scheduling system 100. However, when the scheduling system 100 runs to a certain extent, if the preset resource consumption value of the received real-time transcoding task is relatively large, it may result in that an available transcoding server cannot be found.
(3) In yet another embodiment according to the present invention, an algorithm of ladder scheduling is employed to identify the transcoding servers to be scheduled. For example, the sum of the maximum resource consumption values Qa of all the transcoding servers in the transcoding server cluster is calculated and recorded as Qa ', and the sum of the resource upper limit values Qmax of all the transcoding servers is calculated and recorded as the resource upper limit value Qmax'. When the quotient of dividing Qa 'by Qmax' is greater than 0.8, determining the transcoding server to be scheduled by adopting the scheduling calculation method in the step (1); and when the quotient of dividing Qa 'by Qmax' is not more than 0.8, multiplying the resource upper limit value Qmax of each transcoding server by a coefficient (such as 0.9) smaller than 1, which is equivalent to setting an alarm value slightly lower than the resource upper limit value, and substituting the alarm value as Qmax into the algorithm in (1) to determine the transcoding server to be dispatched. The scheduling calculation method effectively reduces the probability of overload of the transcoding servers by reducing the maximum allowable upper limit value of resources of each transcoding server when the overall load of the transcoding server cluster is not high, but has the defect that the using amount of the transcoding servers can be increased.
According to the scheduling system 100 of the present invention, the acquisition server 110 obtains the resource consumption information of each transcoding server as prior knowledge, so that the subsequent scheduling server 120 can predict the resource consumption value of each real-time transcoding task and confirm the resource consumption information of each transcoding server according to the past resource consumption information when receiving the real-time transcoding task. In addition, when scheduling, the scheduling server 120 can determine a scheduling policy based on scheduling processing data of multiple dimensions (e.g., a preset resource consumption value of a real-time transcoding task, resource consumption information of each transcoding server, an allocated resource value of each transcoding server, etc.) to ensure that each transcoding server is not allocated with excessive tasks and resources of the transcoding servers are not wasted, thereby really improving the efficiency of real-time transcoding.
According to embodiments of the present invention, the acquisition server 110, the dispatch server 120, and each transcoding server may be implemented by a computing device 200 as described below. FIG. 2 shows a schematic diagram of a computing device 200, according to one embodiment of the invention.
As shown in FIG. 2, in a basic configuration 202, a computing device 200 typically includes a system memory 206 and one or more processors 204. A memory bus 208 may be used for communication between the processor 204 and the system memory 206.
Depending on the desired configuration, the processor 204 may be any type of processing, including but not limited to: a microprocessor (μ P), a microcontroller (μ C), a Digital Signal Processor (DSP), or any combination thereof. The processor 204 may include one or more levels of cache, such as a level one cache 210 and a level two cache 212, a processor core 214, and registers 216. Example processor cores 214 may include Arithmetic Logic Units (ALUs), Floating Point Units (FPUs), digital signal processing cores (DSP cores), or any combination thereof. The example memory controller 218 may be used with the processor 204, or in some implementations the memory controller 218 may be an internal part of the processor 204.
Depending on the desired configuration, system memory 206 may be any type of memory, including but not limited to: volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. System memory 206 may include an operating system 220, one or more applications 222, and program data 224. In some implementations, the application 222 can be arranged to execute instructions on the operating system with the program data 224 by the one or more processors 204.
Computing device 200 may also include an interface bus 240 that facilitates communication from various interface devices (e.g., output devices 242, peripheral interfaces 244, and communication devices 246) to the basic configuration 202 via the bus/interface controller 230. The example output device 242 includes a graphics processing unit 248 and an audio processing unit 250. They may be configured to facilitate communication with various external devices, such as a display or speakers, via one or more a/V ports 252. Example peripheral interfaces 244 can include a serial interface controller 254 and a parallel interface controller 256, which can be configured to facilitate communications with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., printer, scanner, etc.) via one or more I/O ports 258. An example communication device 246 may include a network controller 260, which may be arranged to facilitate communications with one or more other computing devices 262 over a network communication link via one or more communication ports 264.
A network communication link may be one example of a communication medium. Communication media may typically be embodied by computer readable instructions, data structures, program modules, and may include any information delivery media, such as carrier waves or other transport mechanisms, in a modulated data signal. A "modulated data signal" may be a signal that has one or more of its data set or its changes made in such a manner as to encode information in the signal. By way of non-limiting example, communication media may include wired media such as a wired network or private-wired network, and various wireless media such as acoustic, Radio Frequency (RF), microwave, Infrared (IR), or other wireless media. The term computer readable media as used herein may include both storage media and communication media.
Computing device 200 may be implemented as a server, such as a file server, database server, application server, WEB server, and the like, or as a personal computer including desktop and notebook computer configurations. Of course, computing device 200 may also be implemented as part of a small-sized portable (or mobile) electronic device. In an embodiment according to the invention, the computing device 200 is implemented as an acquisition server, a scheduling server, a transcoding server, and is configured to execute the scheduling method 300 of real-time transcoding tasks according to the invention. The application 222 of the computing device 200 includes a plurality of program instructions for executing the scheduling method 300 of the real-time transcoding task according to the present invention, and the program data 224 may further store data such as a resource consumption information table and a scheduling information list.
Fig. 3 shows a flow chart of a scheduling method 300 of a real-time transcoding task according to an embodiment of the invention. The scheduling method 300 is performed in the scheduling system 100, and the execution of the scheduling method 300 will be further described with reference to fig. 1 and 3. As shown in fig. 3, the scheduling method 300 begins at step S310.
In step S310, each time the scheduling server 120 receives a real-time transcoding task, the identifier of the transcoding template is parsed from the received real-time transcoding task, and as described above, the real-time transcoding task includes the transcoding template, and the transcoding template includes transcoding parameters for executing the real-time transcoding task. The transcoding template has been described in the foregoing, and reference may be made to the foregoing description for the limitation of space, which is not repeated herein.
Subsequently, in step S320, the scheduling server 120 determines a preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template.
According to one embodiment, the process of determining the preset resource consumption value of the transcoding template may be divided into the following two steps.
In the first step, the scheduling server 120 obtains historical resource consumption information when a real-time transcoding task is executed by using a transcoding template according to the identifier of the transcoding template. According to the embodiment of the invention, the collecting server 110 collects the resource consumption information of each transcoding server when executing the real-time transcoding task, and generates the resource consumption information table according to the resource consumption information. The resource consumption information table stores the identification of each transcoding server, the identification of the transcoding template used by each transcoding server when executing each real-time transcoding task and the corresponding resource consumption information in an associated manner. In one embodiment, the resource consumption information includes at least: the real-time resource consumption value of each transcoding server when executing each real-time transcoding task, the resource upper limit value of each transcoding server and the real-time resource consumption value of each transcoding server. For more details on the resource consumption information table, reference may be made to the description of table 1 above, and details are not repeated here. The scheduling server 120 counts all real-time resource consumption values corresponding to the transcoding template when executing the real-time transcoding task from the resource consumption information table, which is historical resource consumption information of the transcoding template.
And secondly, the scheduling server 120 determines a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information. According to one embodiment, the maximum value is selected from the historical resource consumption information as a preset resource consumption value.
In another embodiment, the historical resource consumption information of the transcoding template includes, in addition to the real-time resource consumption value when the real-time transcoding task is executed, the number of times the transcoding template appears in the resource consumption information table. If the number of times of occurrence of the transcoding template is greater than a threshold value, counting the maximum value of the resource consumption value under a first preset condition, and taking the maximum value as a preset resource consumption value corresponding to the transcoding template; and if the occurrence frequency of the transcoding template is not more than the threshold value, setting an initial value as a preset resource consumption value corresponding to the transcoding template. According to the embodiment of the invention, the threshold value can be flexibly set according to actual conditions. For example, the threshold value may be set to be slightly smaller, or even directly set to 0, when the scheduling system 100 starts executing the scheduling method 300, so that if the transcoding template is never executed, the initial value is taken as the preset resource consumption value. The initial value may be a pre-specified empirical value, which may be set in any of the following ways according to some embodiments. For example, an initial value is set with reference to the preset resource consumption values of other transcoding templates (without being limited thereto, the maximum value, the average value, and the like of the preset resource consumption values of other transcoding templates), and for example, a transcoding task is executed by using the transcoding template to obtain a real-time resource consumption value by simulating an online environment offline, and the real-time resource consumption value is set as the initial value. The embodiments of the present invention are not so limited. If the transcoding template is executed, the maximum value of the corresponding resource consumption value under the first preset condition is counted, in an embodiment, the first preset condition is set to be in most cases (for example, 99%) and, assuming that the counted resource consumption value is smaller than M in 99%, M is taken as the corresponding preset resource consumption value. It should be noted that the present invention is not limited to determining the preset resource consumption value in the above 99% of cases, and may select a suitable preset resource consumption value according to the actual situation, as long as it is ensured that the actually consumed resource value of the transcoding template will be smaller than the preset resource consumption value under the high probability.
Subsequently, in step S330, resource consumption information of the plurality of transcoding servers is acquired.
According to one embodiment, the scheduling server 120 obtains the real-time resource consumption value and the resource upper limit value of each transcoding server from the resource consumption information table on the acquisition server 110.
Subsequently, in step S340, the scheduling server 120 determines a transcoding server executing a real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server. According to one embodiment of the present invention, the scheduling policy for determining, at the scheduling server 120, the transcoding server performing a certain real-time transcoding task is: the sum of the real-time resource consumption value of the transcoding server and the preset resource consumption value of the current transcoding template should be smaller than the resource upper limit value of the transcoding server, so as to ensure that each transcoding server cannot perform real-time transcoding due to the fact that the tasks are distributed too heavily under most conditions. And after determining the transcoding server executing the real-time transcoding task, forwarding the real-time transcoding task to the transcoding server, and executing the real-time transcoding task by the transcoding server.
According to another embodiment, in step S330, in addition to obtaining the resource consumption information, the scheduling server 120 may also count the allocated resource values of the transcoding servers. Then, in step S340, the scheduling server 120 determines a transcoding server executing the real-time transcoding task according to the preset resource consumption value of the real-time transcoding task, the resource consumption information of each transcoding server, and the allocated resource value of each transcoding server. A specific process of determining a transcoding server according to another embodiment of the present invention is described below. When the transcoding server executing the real-time transcoding task is determined each time, the scheduling server 120 may further associate and record the transcoding server and a preset resource consumption value corresponding to the real-time transcoding task to generate a scheduling information list. In this case, the allocated resource value of each transcoding server may be counted through the scheduling information list, for example, a total of preset resource consumption values corresponding to each transcoding server is counted from the scheduling information list as the allocated resource value of each transcoding server. In some embodiments, the preset resource consumption value of the real-time transcoding task, the resource consumption information of each transcoding server, the allocated resource value of each transcoding server, and the like are collectively referred to as "scheduling processing data". At this time, step S340 may be divided into two steps: the scheduling server 120 first traverses each transcoding server, and obtains the maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the allocated resource value of the transcoding server (optionally, the real-time resource consumption value and the allocated resource value of the transcoding server are compared, and a larger value is selected as the maximum resource consumption value); and then, when the sum of the maximum resource consumption value of the transcoding server and the preset resource consumption value of the real-time transcoding task is not greater than the resource upper limit value of the transcoding server, taking the transcoding server as the transcoding server to be allocated.
Several algorithms for determining transcoding servers using scheduling process data have been shown in the foregoing description of scheduling system 100 and will not be described here. It should be noted that the embodiments of the present invention are intended to provide a concept and a scheduling policy for determining a transcoding server to be scheduled from a transcoding server cluster by using the scheduling processing data, and the embodiments of the present invention only exemplify several specific computing processes, and those skilled in the art can design different specific algorithms based on the scheduling policy and the scheduling processing data to adapt to different application scenarios, which are within the scope of the present invention.
The scheduling scheme of the real-time transcoding task has at least the following two advantages: the method comprises the steps that firstly, the resource consumption value of the real-time transcoding task (namely, the preset resource consumption value of the transcoding template) is predicted by collecting the historical resource consumption value of the transcoding template corresponding to the real-time transcoding task, and the accuracy of the prediction result is high; and secondly, when scheduling, a scheduling strategy is determined based on scheduling processing data of multiple dimensions (such as preset resource consumption values of real-time transcoding tasks, resource consumption information of each transcoding server, allocated resource values of each transcoding server and the like), so that the problem of uneven task distribution on the transcoding servers is well solved, and the utilization rate of the transcoding servers is improved. Experiments prove that according to the scheduling scheme, the CPU utilization rate of each transcoding server in the transcoding server cluster can reach 50%, and the overload probability of the transcoding servers is less than one thousandth.
It should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in a device as described in this embodiment or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into multiple sub-modules.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
Furthermore, some of the described embodiments are described herein as a method or combination of method elements that can be performed by a processor of a computer system or by other means of performing the described functions. A processor having the necessary instructions for carrying out the method or method elements thus forms a means for carrying out the method or method elements. Further, the elements of the apparatus embodiments described herein are examples of the following apparatus: the apparatus is used to implement the functions performed by the elements for the purpose of carrying out the invention.
As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this description, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The present invention has been disclosed in an illustrative rather than a restrictive sense, and the scope of the present invention is defined by the appended claims.

Claims (16)

1. A scheduling method of a real-time transcoding task, the method comprising the steps of:
analyzing an identifier of a transcoding template from a received real-time transcoding task, wherein the transcoding template comprises transcoding parameters for executing the real-time transcoding task;
determining a preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template;
acquiring resource consumption information of a plurality of transcoding servers; and
and determining the transcoding server executing the real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server.
2. The method of claim 1, wherein the step of determining the preset resource consumption value corresponding to the transcoding template according to the identifier of the transcoding template comprises:
acquiring historical resource consumption information when a real-time transcoding task is executed by using the transcoding template according to the identifier of the transcoding template; and
and determining a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information.
3. The method of claim 2, wherein the step of obtaining historical resource consumption information when performing a real-time transcoding task using a transcoding template according to an identifier of the transcoding template comprises:
generating a resource consumption information table according to resource consumption information of each transcoding server when executing a real-time transcoding task, wherein the resource consumption information table is used for storing an identifier of each transcoding server, an identifier of a transcoding template used when executing each real-time transcoding task and corresponding resource consumption information in an associated manner; and
and counting the resource consumption value corresponding to the transcoding template from the resource consumption information table to serve as historical resource consumption information of the transcoding template.
4. The method of claim 2 or 3, wherein the historical resource consumption information of the transcoding template further comprises the number of times the transcoding template appears in a resource consumption information table.
5. The method of claim 4, wherein the step of determining the preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information comprises:
if the occurrence frequency is greater than the threshold value, counting the maximum value of the resource consumption value under a first preset condition, and taking the maximum value as a preset resource consumption value corresponding to the transcoding template; and
and if the occurrence frequency is not more than the threshold value, setting an initial value as a preset resource consumption value corresponding to the transcoding template.
6. The method according to any of claims 1-5, wherein after determining the transcoding server performing the real-time transcoding task, further comprising the steps of:
and recording preset resource consumption values corresponding to the transcoding server and the real-time transcoding task in an associated manner, and generating a scheduling information list.
7. The method of any of claims 3-6, wherein the step of obtaining resource consumption information for each transcoding server comprises:
and acquiring the real-time resource consumption value and the resource upper limit value of each transcoding server from the resource consumption information table.
8. The method of claim 6 or 7, wherein the step of obtaining resource consumption information of each transcoding server further comprises: and counting the sum of the preset resource consumption values corresponding to the transcoding servers from the scheduling information list to serve as the distributed resource values of the transcoding servers.
9. The method of claim 8, wherein the step of calculating the transcoding servers to be allocated according to the preset resource consumption value and the resource consumption information of each transcoding server comprises:
traversing each transcoding server, and obtaining the maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the distributed resource value of the transcoding server; and
and when the sum of the maximum resource consumption value of the transcoding server and the preset resource consumption value is not greater than the resource upper limit value of the transcoding server, taking the transcoding server as the transcoding server to be allocated.
10. A scheduling apparatus, comprising:
the analysis unit is suitable for analyzing the identification of the transcoding template from the received real-time transcoding task, wherein the transcoding template comprises transcoding parameters for executing the real-time transcoding task;
the computing unit is suitable for counting historical resource consumption information of the transcoding template according to the identifier of the transcoding template and determining a preset resource consumption value corresponding to the transcoding template according to the historical resource consumption information; and
and the scheduling unit is suitable for acquiring the resource consumption information of the plurality of transcoding servers, determining the transcoding server executing the real-time transcoding task according to the preset resource consumption value and the resource consumption information of each transcoding server, and forwarding the real-time transcoding task to the transcoding server to execute the real-time transcoding task.
11. The scheduling apparatus of claim 10,
and the historical resource consumption information of the transcoding template comprises a resource consumption value corresponding to the transcoding template.
12. The scheduling apparatus of claim 10 or 11, wherein the historical resource consumption information of the transcoding template further comprises a number of times the transcoding template appears in a resource consumption information table.
13. The scheduling apparatus of claim 12,
the computing unit is further adapted to count a maximum value of the resource consumption value under a first preset condition when the number of times of occurrence of the transcoding template is greater than a threshold value, and take the maximum value as a preset resource consumption value corresponding to the transcoding template; and the computing unit is also suitable for setting an initial value as a preset resource consumption value corresponding to the transcoding template when the occurrence frequency of the transcoding template is not more than a threshold value.
14. The scheduling apparatus of any one of claims 10-13,
the scheduling unit is also suitable for recording preset resource consumption values corresponding to the transcoding server and the real-time transcoding task in an associated mode so as to generate a scheduling information list.
15. The scheduling apparatus of claim 14,
the resource consumption information of each transcoding server also comprises a resource upper limit value of each transcoding server; and
the scheduling unit is further adapted to count a sum of preset resource consumption values corresponding to the transcoding servers from the scheduling information list, and the sum is used as an allocated resource value of each transcoding server.
16. The scheduling apparatus of claim 15,
the scheduling unit is also suitable for traversing each transcoding server, obtaining the maximum resource consumption value of the transcoding server according to the real-time resource consumption value and the allocated resource value of the transcoding server, and taking the transcoding server as the transcoding server to be allocated when the sum of the maximum resource consumption value of the transcoding server and the preset resource consumption value is not more than the resource upper limit value of the transcoding server.
CN201811039143.8A 2018-09-06 2018-09-06 Scheduling method and scheduling device for real-time transcoding task Active CN110879749B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811039143.8A CN110879749B (en) 2018-09-06 2018-09-06 Scheduling method and scheduling device for real-time transcoding task

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811039143.8A CN110879749B (en) 2018-09-06 2018-09-06 Scheduling method and scheduling device for real-time transcoding task

Publications (2)

Publication Number Publication Date
CN110879749A true CN110879749A (en) 2020-03-13
CN110879749B CN110879749B (en) 2023-04-07

Family

ID=69728316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811039143.8A Active CN110879749B (en) 2018-09-06 2018-09-06 Scheduling method and scheduling device for real-time transcoding task

Country Status (1)

Country Link
CN (1) CN110879749B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112911322A (en) * 2021-01-26 2021-06-04 北京锐马视讯科技有限公司 Live broadcast cloud transcoding elastic expansion method and device
CN114490096A (en) * 2022-04-19 2022-05-13 深圳支点电子智能科技有限公司 Burst cloud task processing method and system based on mobile internet
CN114679604A (en) * 2022-04-11 2022-06-28 上海哔哩哔哩科技有限公司 Resource processing method and device

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149559A1 (en) * 2002-02-07 2003-08-07 Lopez-Estrada Alex A. Audio coding and transcoding using perceptual distortion templates
CN104391749A (en) * 2014-11-26 2015-03-04 北京奇艺世纪科技有限公司 Resource allocation method and device
US9166897B1 (en) * 2014-09-24 2015-10-20 Oracle International Corporation System and method for supporting dynamic offloading of video processing for user account management in a computing environment
CN105992020A (en) * 2015-07-24 2016-10-05 乐视云计算有限公司 Video conversion resource distribution method and system
CN106375115A (en) * 2016-08-30 2017-02-01 东软集团股份有限公司 Resource distribution method and device
CN106851336A (en) * 2017-02-07 2017-06-13 上海网达软件股份有限公司 The audio-video document code-transferring method and system of a kind of Dynamic Resource Allocation for Multimedia
CN108156485A (en) * 2017-12-22 2018-06-12 北京百度网讯科技有限公司 Method, apparatus, storage medium and the terminal device of streaming media transcoding
CN108366273A (en) * 2018-03-16 2018-08-03 中国传媒大学 Distributed video transcoding system and distributed video transcoding method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030149559A1 (en) * 2002-02-07 2003-08-07 Lopez-Estrada Alex A. Audio coding and transcoding using perceptual distortion templates
US9166897B1 (en) * 2014-09-24 2015-10-20 Oracle International Corporation System and method for supporting dynamic offloading of video processing for user account management in a computing environment
CN104391749A (en) * 2014-11-26 2015-03-04 北京奇艺世纪科技有限公司 Resource allocation method and device
CN105992020A (en) * 2015-07-24 2016-10-05 乐视云计算有限公司 Video conversion resource distribution method and system
CN106375115A (en) * 2016-08-30 2017-02-01 东软集团股份有限公司 Resource distribution method and device
CN106851336A (en) * 2017-02-07 2017-06-13 上海网达软件股份有限公司 The audio-video document code-transferring method and system of a kind of Dynamic Resource Allocation for Multimedia
CN108156485A (en) * 2017-12-22 2018-06-12 北京百度网讯科技有限公司 Method, apparatus, storage medium and the terminal device of streaming media transcoding
CN108366273A (en) * 2018-03-16 2018-08-03 中国传媒大学 Distributed video transcoding system and distributed video transcoding method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
谭智一;宋建新;: "分布式视频转码服务调度算法研究" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112911322A (en) * 2021-01-26 2021-06-04 北京锐马视讯科技有限公司 Live broadcast cloud transcoding elastic expansion method and device
CN112911322B (en) * 2021-01-26 2022-09-16 北京锐马视讯科技有限公司 Live broadcast cloud transcoding elastic expansion method and device
CN114679604A (en) * 2022-04-11 2022-06-28 上海哔哩哔哩科技有限公司 Resource processing method and device
CN114679604B (en) * 2022-04-11 2023-12-19 上海哔哩哔哩科技有限公司 Resource processing method and device
CN114490096A (en) * 2022-04-19 2022-05-13 深圳支点电子智能科技有限公司 Burst cloud task processing method and system based on mobile internet

Also Published As

Publication number Publication date
CN110879749B (en) 2023-04-07

Similar Documents

Publication Publication Date Title
WO2020093694A1 (en) Method for generating video analysis model, and video analysis system
CN110879749B (en) Scheduling method and scheduling device for real-time transcoding task
CN104391749B (en) Resource allocation method and device
WO2017166643A1 (en) Method and device for quantifying task resources
CN104901989B (en) A kind of Site Service offer system and method
CN112000454B (en) Method and device for processing multimedia data
US20140096146A1 (en) Translating time-stamped events to performance indicators
CN107155093B (en) Video preview method, device and equipment
CN107346270B (en) Method and system for real-time computation based radix estimation
WO2021068113A1 (en) Method and apparatus for compiling duration statistics, electronic device, and computer-readable medium
WO2022048204A1 (en) Image generation method and apparatus, electronic device, and computer readable storage medium
CN112422977A (en) Distribution method and distribution device for audio and video transcoding tasks
CN109598250A (en) Feature extracting method, device, electronic equipment and computer-readable medium
CN113079062B (en) Resource adjusting method and device, computer equipment and storage medium
CN106933673B (en) Method and device for adjusting number of logical threads of component
CN107734360B (en) Control method and device of streaming media server
WO2019127926A1 (en) Calculation method and calculation device for sparse neural network, electronic device, computer readable storage medium, and computer program product
CN110955513A (en) Scheduling method and system of service resources
CN112416568A (en) Duration estimation method and duration estimation device for audio and video transcoding task
CN115576973B (en) Service deployment method, device, computer equipment and readable storage medium
CN112040090A (en) Video stream processing method and device, electronic equipment and storage medium
CN109462510B (en) CDN node quality evaluation method and device
US11954630B2 (en) Real time method and system for analyzing data streams
CN107748711B (en) Method for automatically optimizing Storm parallelism, terminal equipment and storage medium
CN107508705B (en) Resource tree construction method of HTTP element and computing equipment

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40025729

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant