CN107948004B - Video CDN (content delivery network) calling optimization method and device - Google Patents
Video CDN (content delivery network) calling optimization method and device Download PDFInfo
- Publication number
- CN107948004B CN107948004B CN201711486733.0A CN201711486733A CN107948004B CN 107948004 B CN107948004 B CN 107948004B CN 201711486733 A CN201711486733 A CN 201711486733A CN 107948004 B CN107948004 B CN 107948004B
- Authority
- CN
- China
- Prior art keywords
- target
- video server
- scheduling
- priority
- client
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention provides a video CDN (content delivery network) calling optimization method and device, wherein the method is applied to a scheduling server, and utilizes a pre-established priority identification model to identify the target priority and the target probability of a client so as to determine a target video server cluster of the client and distribute video servers for the client. Based on the method disclosed by the invention, the grade of the user can be identified, and the targeted scheduling service is provided for the user according to the identification result.
Description
Technical Field
The invention relates to the technical field of mobile communication, in particular to a video CDN (content delivery network) calling optimization method and device.
Background
A video CDN (Content Delivery Network) system is a system capable of providing a video streaming service. In a video CDN system, a scheduling server functions to specify a video server for downloading a video file fragment for a user.
At present, there are two scheduling strategies commonly used by a scheduling server, one is a flow control strategy, and the other is a scheduling strategy based on a user download speed. For the second scheduling strategy, the scheduling server schedules the request of the user to the video server with the highest downloading speed of the user.
The video server with the highest downloading speed is mainly determined by the client by measuring the speed by itself, namely the client determines the video server information with the highest downloading speed and feeds the video server information back to the scheduling server. Therefore, the dispatch server cannot provide a targeted dispatch service at a user level, for example, the dispatch service provided by the dispatch server is consistent for normal users and member users with higher priority than the normal users.
Disclosure of Invention
In view of this, the present invention provides a method and an apparatus for optimizing a video CDN dispatch, so as to solve a problem that an existing dispatch server cannot provide a targeted dispatch service according to a user level. The technical scheme is as follows:
a video CDN (content delivery network) calling optimization method is applied to a scheduling server and comprises the following steps:
when a scheduling request sent by a client is received, acquiring target associated log data of the client according to the scheduling request;
determining a target priority of the client and a target probability corresponding to the target priority according to the target associated log data and a pre-established priority identification model;
determining a target video server cluster of the client according to the target priority and the target probability;
and distributing a video server for the client from the target video server cluster, and sending the label of the distributed video server to the client.
Preferably, the pre-established priority recognition model comprises:
calling first log data of the scheduling server and second log data of a preset video server;
selecting scheduling data of a historical access client from the first log data, and selecting downloading data of the historical access client from the second log data;
taking the scheduling data and the downloaded data as historical associated log data of the client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority;
respectively extracting the data characteristics of the historical associated log data and the priority characteristics of the priority labels;
and establishing a priority identification model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
Preferably, the determining a target video server cluster of the client according to the target priority and the target probability includes:
judging whether the target probability is smaller than a probability threshold value;
if the target probability is smaller than the probability threshold, re-determining a new target priority of the client and a new target probability corresponding to the new target priority for the target associated log data according to a preset priority marking rule;
judging whether the new target probability is smaller than the probability threshold value;
if the new target probability is not less than the probability threshold, determining a target video server cluster of the client according to the new target priority;
and if the target probability is not less than the probability threshold, determining a target video server cluster of the client according to the target priority.
Preferably, the allocating a video server from the target video server cluster to the client includes:
under the condition that the calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by the client, and the emergency parameter is used for representing the emergency degree of the calling;
if the target video server is in the target video server cluster and the emergency parameter is used for representing non-emergency scheduling, extracting the scheduling request;
generating a scheduling request queue formed by the scheduling requests;
and distributing a video server for the scheduling request in the scheduling request queue according to a preset flow upper limit value of the video server in the target video server cluster and the target video server label.
Preferably, the allocating a video server to the scheduling request in the scheduling request queue according to the preset traffic upper limit value of the video server in the target video server cluster and the target video server tag includes:
calculating the flow control proportion of the target video server cluster according to the preset flow upper limit value of the video servers in the target video server cluster;
selecting a scheduling request with empty label content of a target video server in the scheduling request queue, and distributing a video server for the selected scheduling request according to the flow control proportion;
and reallocating the video servers to the scheduling requests of the unallocated video servers according to the flow control proportion, wherein the scheduling requests of the unallocated video servers comprise the scheduling requests which are not selected in the scheduling request queue and the scheduling requests of the unallocated video servers in the selected scheduling requests.
Preferably, the allocating a video server from the target video server cluster to the client includes:
under the condition that the calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by the client, and the emergency parameter is used for representing the emergency degree of the calling;
if the target video server is in the target video server cluster, determining a target running state of the scheduling server;
and distributing a video server to the scheduling request according to the target running state, a preset flow upper limit value of a video server in the target video server cluster, the target video server label and the emergency parameter.
Preferably, the determining the target operation state of the dispatch server includes:
calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
calculating the current flow control proportion of the target video server cluster based on the current flow value of the video servers in the target video server cluster;
judging whether the current flow control proportion is equal to the target flow control proportion or not;
if the current flow control proportion is equal to the target flow control proportion, determining a preset initial operation state as a target operation state of the scheduling server;
if the current flow control proportion is not equal to the target flow control proportion, acquiring the running time of the scheduling server in the current running state;
acquiring the current scheduling request processing amount of a video server in the target video server cluster, and calculating the total processing amount of the current scheduling request of the target video server cluster and the current scheduling request distribution ratio according to the current scheduling request processing amount;
if the running time length is greater than a running time length threshold value, or the total processing capacity of the current scheduling request is greater than a scheduling request total processing capacity threshold value, or the current scheduling request distribution ratio is not in a preset scheduling request distribution ratio range, determining a target running state of the scheduling server according to a preset scheduling server running state switching rule;
and if the running time length is not greater than a running time length threshold value, the total processing capacity of the current scheduling request is not greater than a scheduling request total processing capacity threshold value, and the current scheduling request distribution ratio is in a preset scheduling request distribution ratio range, determining the current running state of the scheduling server as a target running state.
Preferably, the allocating a video server to the scheduling request according to the target operating state, a preset flow upper limit value of a video server in the target video server cluster, the target video server tag, and the emergency parameter includes:
identifying the state type of the target operation state, wherein the state type comprises a full request response state, an emergency request response state or a flow rebalance state;
calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
judging whether the label content of the target video server label is empty or not under the condition that the state type is the full request response state;
if the label content of the target video server label is empty, distributing a video server to the scheduling request according to the target flow control proportion;
if the label content of the target video server label is not empty, distributing a video server to the scheduling request according to the target video server label;
under the condition that the state type is the emergency request response state, if the emergency parameter is a first emergency parameter used for representing non-emergency scheduling, distributing a video server for the scheduling request according to the target flow control proportion;
if the emergency parameter is a second emergency parameter used for representing emergency scheduling, distributing a video server for the scheduling request according to the target video server label;
and under the condition that the state type is the flow rebalancing state, distributing a video server to the scheduling request according to the target flow control proportion.
A video CDN invocation optimization apparatus, comprising: the system comprises an acquisition module, a first determination module, a second determination module and a distribution module, wherein the first determination module comprises a model establishing unit;
the acquisition module is used for acquiring target associated log data of a client according to a scheduling request sent by the client when the scheduling request is received;
the model establishing unit is used for establishing a priority identification model in advance;
the first determining module is used for determining the target priority of the client and the target probability corresponding to the target priority according to the target associated log data and a pre-established priority identification model;
the second determining module is configured to determine a target video server cluster of the client according to the target priority and the target probability;
the distribution module is used for distributing the video server for the client from the target video server cluster and sending the label of the distributed video server to the client.
Preferably, the model establishing unit is specifically configured to:
calling first log data of the scheduling server and second log data of a preset video server; selecting scheduling data of a historical access client from the first log data, and selecting downloading data of the historical access client from the second log data; taking the scheduling data and the downloaded data as historical associated log data of the client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority; respectively extracting the data characteristics of the historical associated log data and the priority characteristics of the priority labels; and establishing a priority identification model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
Compared with the prior art, the invention has the following beneficial effects:
the invention provides a video CDN (content delivery network) calling optimization method and device, wherein the method is applied to a scheduling server, and utilizes a pre-established priority identification model to identify the target priority and the target probability of a client so as to determine a target video server cluster of the client and distribute video servers for the client. Based on the method disclosed by the invention, the grade of the user can be identified, and the targeted scheduling service is provided for the user according to the identification result.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a flowchart of a method for optimizing video user scheduling according to an embodiment of the present invention;
fig. 2 is a flowchart of a method of "pre-establishing a priority recognition model" in step S20 of the video user scheduling optimization method according to the embodiment of the present invention;
fig. 3 is a flowchart of a video user scheduling optimization method provided in an embodiment of the present invention, step S30;
fig. 4 is a flowchart of a method of "allocating video servers from a target video server cluster to clients" in step S40 of the video user scheduling optimization method according to the embodiment of the present invention;
fig. 5 is a flowchart of a video user scheduling optimization method provided in an embodiment of the present invention, in step S404;
fig. 6 is a flowchart of a method of "allocating video servers from a target video server cluster to clients" in step S40 of the video user scheduling optimization method according to the embodiment of the present invention;
fig. 7 is a flowchart of a method of determining a target running state of a scheduling server in step S406 of the video user scheduling optimization method according to the embodiment of the present invention;
fig. 8 is an example of a state cycle diagram of a dispatch server according to an embodiment of the present invention;
fig. 9 is a flowchart of a video user scheduling optimization method provided in the embodiment of the present invention, step S407;
fig. 10 is a schematic structural diagram of a video user scheduling optimization apparatus according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The embodiment of the invention provides a video CDN (content delivery network) calling optimization method, which is applied to a scheduling server, and the flow chart of the method is shown in figure 1, and comprises the following steps:
s10, when a scheduling request sent by the client is received, acquiring target associated log data of the client according to the scheduling request;
in this embodiment, the log data of the scheduling server records scheduling data of all clients accessing the scheduling server, and the log data of the video server records download data of all clients accessing the video server.
In addition, the client sends a request to both the scheduling server and the video server, which includes a unique client identifier, such as an IP address of the client, and may optionally include a video content ID of the request and other parameters related to user behavior, for example, a video ID of previous browsing, a number of clicks on a video page/playing page from the time of entering the page to the time of requesting scheduling, a machine type used, an average time length of historical browsing/an end-of-view rate, and the like. Therefore, the scheduling data of the client can be obtained from the log data of the scheduling server by using the unique client identifier, the downloading data of the client is obtained from the log data of the video server, and the target associated log data of the client is formed by the scheduling data and the downloading data.
S20, determining the target priority of the client and the target probability corresponding to the target priority according to the target associated log data and a pre-established priority identification model;
in a specific implementation process, the process of "establishing a priority identification model in advance" in step S20 may specifically adopt the following steps, and a flowchart of the method is shown in fig. 2:
s201, calling first log data of a scheduling server and second log data of a preset video server;
in this embodiment, the first log data records scheduling data of all clients accessing the scheduling server, and the second log data records download data of all clients accessing the video server.
S202, selecting scheduling data of the historical access client from the first log data, and selecting downloading data of the historical access client from the second log data;
in the process of executing step S202, the scheduling data of the historical access client may be obtained from the scheduling server log data and the download data of the historical access client may be obtained from the video server log data by using the known client unique identifier of the historical access client.
S203, taking the scheduling data and the download data as historical associated log data of a historical access client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority;
in the process of executing step S203, a preset priority labeling rule may be set that "a user watching a non-hotcast drama and having a history average browsing duration lower than a duration threshold is a normal priority user, and a user watching a hotcast drama or having a history average browsing duration above the duration threshold is a high priority user", then, relevant data of two characteristics, that is, "video content being watched (hotcast drama or non-hotcast drama)" and "history average browsing duration" of the history access client, are extracted from the history associated log data, and a corresponding priority label is added according to the rule, for example, the priority added by the high priority user is "1", and the priority added by the normal priority user is "0", in this process, the probability that the history access client becomes the high priority user or the normal priority user needs to be labeled.
Of course, if the history related log data does not include the related data of the two features, the priority label of the history access client is determined to be null, that is, the priority is not determined, and the probability corresponding to the priority is not determined.
In addition, other features can be selected according to actual needs according to the features in the preset priority labeling rule, and the embodiment is not particularly limited, and can be specifically selected according to time needs, and is within the protection scope of the embodiment of the present invention.
In addition, because the data processing amount is large, the history related log data of all history access clients can be processed in batch:
firstly, clustering the history associated log data of all history access clients according to preset characteristics, wherein the clustering algorithm can adopt a simplest proximity algorithm (kNN, k-nearest neighbor classification algorithm); and then determining the priority label of the historical access client according to the clustering result. For example, if the two preset features "watched video content (hot play or non-hot play)" and "average duration of historical browsing" are used, a historical access client that watches non-hot play exceeding a quantity threshold and has average duration of historical browsing lower than a duration threshold is detected in a clustering result, then the historical access clients are classified as normal priority users, and accordingly, a historical access client that watches hot play or has average duration of historical browsing above the duration threshold is classified as a high priority user, and a probability is set for the historical access client according to a certain preset feature; and the rest historical access clients are users with uncertain priority, and the priority label is directly set to be null.
S204, respectively extracting data characteristics of history associated log data and priority characteristics of a priority label;
s205, establishing a priority recognition model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
It should be noted that the preset supervised learning algorithm includes, but is not limited to, a decision tree, a support vector machine, or a neural network, and a user may specifically select the algorithm according to actual needs, which is not limited in this embodiment.
It should be further noted that, since the normal priority user is generally a traffic user, a malicious attack user, or a robot, and does not make a complaint, if a certain client is determined as the normal priority user by using the priority identification model, then the scheduling request of the client is scheduled according to the classification result, after receiving the complaint information of the client, the classification result of the client can be adjusted from the normal priority user to a high priority user, and then the priority identification model is corrected according to the adjusted result.
S30, determining a target video server cluster of the client according to the target priority and the target probability;
in the process of executing step S30, for example, the priority identification result of the client is "probability of exceeding, the client is a high-priority user", whether the target priority "high priority" identified by the priority identification model is accurate is first determined by using the target probability value "x%", and then the target video server cluster of the client is determined by using the correspondence between the priorities and the video server clusters established in advance, for example, the high priority corresponds to the video server cluster in the high-quality computer room.
In a specific implementation process, in the step S30, "determining a target video server cluster of a client according to a target priority and a target probability" may specifically adopt the following steps, and a flowchart of the method is shown in fig. 3:
s301, judging whether the target probability is smaller than a probability threshold value; if the target probability is smaller than the probability threshold, executing step S302; if the target probability is not less than the probability threshold, executing step S305;
s302, re-determining a new target priority of the client and a new target probability corresponding to the new target priority for the target associated log data according to a preset priority marking rule;
in this embodiment, the preset priority labeling rule may be consistent with the rule for training the priority recognition model, and the preset priority labeling rule may be set to "a user watching a non-hotcast episode and having a historical average browsing duration lower than the duration threshold is a normal priority user, a user watching a hotcast episode or having a historical average browsing duration above the duration threshold is a high priority user", extracting the related data of the client in two characteristics of ' watched video content (hot play or non-hot play) "and ' average time length of historical browsing ' from the target associated log data, and adding corresponding new priority labels according to the above rules, for example, the new target priority added by the high priority user is "1", the new target priority added by the normal priority user is "0", in the process, the new target probability of the client becoming a high-priority user or a common-priority user needs to be marked.
Of course, if the associated log data does not include the related data of the two features, the new priority label of the client is determined to be null, that is, the new target priority is not determined, and the new target probability is not determined.
In addition, other features can be selected according to actual needs according to the features in the preset priority labeling rule, and the embodiment is not particularly limited, and can be specifically selected according to time needs, and is within the protection scope of the embodiment of the present invention.
S303, judging whether the new target probability is smaller than a probability threshold value; if the new target probability is not less than the probability threshold, executing step S304;
s304, determining a target video server cluster of the client according to the new target priority;
in the process of executing step S304, the target video server cluster corresponding to the new target priority may be determined according to the established correspondence between the priority and the video server cluster, for example, the high priority corresponds to the video server cluster in the high-quality computer room.
S305, determining a target video server cluster of the client according to the target priority;
in the process of executing step S305, the target video server cluster with the target priority may be determined according to a pre-established correspondence relationship between the priority and the video server cluster, for example, a high priority corresponds to a video server cluster in a high-quality computer room.
S40, distributing video servers for the client from the target video server cluster, and sending the labels of the distributed video servers to the client;
in a specific implementation process, in the process of "allocating a video server from a target video server cluster to a client" in step S40, the following steps may be specifically adopted, and a flowchart of the method is shown in fig. 4:
s401, under the condition that a calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by a client, and the emergency parameter is used for representing the emergency degree of scheduling;
in this embodiment, the predetermined video server is the video server with the highest downloading speed at the angle of the client, and may be determined by the client by using a speed measurement method. The target video server tag content may be null for indicating the video server with the highest uncertain download speed.
The emergency parameter may be determined by the client detecting the video status, for example, in a case where the cached data is sufficient, the client does not need to obtain the video data immediately, the client sets the emergency parameter to a first emergency parameter for representing non-emergency scheduling, for example, to "0", and further, for example, in a case where video is broadcast, the cache is insufficient, or the hiton recovery occurs, the client needs to obtain the video data as soon as possible, and sets the emergency parameter to a second emergency parameter for representing emergency scheduling, for example, to "1", and of course, the emergency parameter may also be empty, and is used to indicate whether emergency processing is uncertain.
S402, if the target video server is in the target video server cluster and the emergency parameter is used for representing non-emergency scheduling, extracting a scheduling request;
s403, generating a scheduling request queue formed by scheduling requests;
in this embodiment, the scheduling request queue includes one or more scheduling requests;
s404, distributing video servers for the scheduling requests in the scheduling request queue according to the preset flow upper limit value of the video servers in the target video server cluster and the target video server label;
in a specific implementation process, in step S404, "allocating a video server to a scheduling request in a scheduling request queue according to a preset traffic upper limit value of a video server in a target video server cluster and a target video server tag" may specifically adopt the following steps, and a flowchart of the method is as shown in fig. 5:
s1001, calculating a target flow control proportion of a target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
in the process of executing step S1001, it is assumed that there are two video servers in the target video server cluster, which are denoted as M and N, the upper limit value of the traffic of the video server M is 2h, and the upper limit value of the traffic of the video server N is h, and then the target traffic control ratio of the target video server cluster is 2h: h ═ 2: 1.
S1002, selecting a scheduling request with empty label content of a target video server in a scheduling request queue, and distributing a video server for the selected scheduling request according to a target flow control proportion;
in the process of executing step S1002, it is assumed that there are 90 non-emergency scheduling requests in the scheduling request queue, where the target video server tags of 40 scheduling requests are M, the target video server tags of 40 scheduling requests are N, and the target video server tags of other 10 scheduling requests are empty, then 80 scheduling requests whose target video server tags are not empty are selected first, and according to the target flow control ratio 2:1 calculated in step S1001, all the scheduling requests whose 40 entry target video server tags are M are allocated to the video server M, 20 scheduling requests whose 40 entry target video server tags are N are extracted from the scheduling requests whose 40 entry target video server tags are N and allocated to the video server N, and at this time, 20 scheduling requests whose entry target video server tags are N and 10 scheduling requests whose entry target video server tags are empty are still left.
S1003, reallocating the video servers to the scheduling requests of the unallocated video servers according to the target flow control proportion, wherein the scheduling requests of the unallocated video servers comprise unselected scheduling requests in the scheduling request queue and the scheduling requests of the unallocated video servers in the selected scheduling requests;
in the process of executing step S1003, according to the target flow control ratio 2:1 calculated in step S1001, video servers are reallocated for the scheduling request of the unallocated video server in step S1002, that is, the scheduling request with 20 entries marked with video server labels as N and the scheduling request with 10 entries marked with video server labels as empty, specifically, 10 scheduling requests with N labels of the 20 entries marked with video server labels are selected from the scheduling requests with N labels of the 20 entries marked with video server labels and the remaining scheduling requests with N labels of the unallocated 10 entries marked with video server labels and with empty labels of the 10 entries marked with video server labels are allocated to the video server M.
In addition, if the target video server is not in the target video server cluster or the emergency parameter is used for representing emergency scheduling, the video server is allocated to the scheduling request according to the flow control strategy, and the label of the allocated video server is sent to the client corresponding to the scheduling request.
In this embodiment, the flow control policy is an existing "allocating a video server to a scheduling request according to a flow control ratio in a scheduling area".
In a specific implementation process, in the process of "allocating a video server from a target video server cluster to a client" in step S40, the following steps may be specifically adopted, and a flowchart of the method is shown in fig. 6:
s405, under the condition that the calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by a client, and the emergency parameter is used for representing the emergency degree of scheduling;
in this embodiment, the predetermined video server is the video server with the highest downloading speed at the angle of the client, and may be determined by the client by using a speed measurement method. The target video server tag content may be null for indicating the video server with the highest uncertain download speed.
The emergency parameter may be determined by the client detecting the video status, for example, in a case where the cached data is sufficient, the client does not need to obtain the video data immediately, the client sets the emergency parameter to a first emergency parameter for representing non-emergency scheduling, for example, to "0", and further, for example, in a case where video is broadcast, the cache is insufficient, or the hiton recovery occurs, the client needs to obtain the video data as soon as possible, and sets the emergency parameter to a second emergency parameter for representing emergency scheduling, for example, to "1", and of course, the emergency parameter may also be empty, and is used to indicate whether emergency processing is uncertain.
S406, if the target video server is in the target video server cluster, determining a target running state of the scheduling server;
in a specific implementation process, in the process of "determining the target operation state of the scheduling server" in step S406, the following steps may be specifically adopted, and a flowchart of the method is shown in fig. 7:
s1004, calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of the video servers in the target video server cluster;
in the process of executing step S1004, assuming that there are two video servers in the target video server cluster, which are denoted as M and N, the upper limit value of the traffic of the video server M is 2h, and the upper limit value of the traffic of the video server N is h, the target flow control ratio of the target video server cluster is 2h: h-2: 1.
S1005, calculating the current flow control proportion of the target video server cluster based on the current flow value of the video servers in the target video server cluster;
s1006, judging whether the current flow control proportion is equal to the target flow control proportion; if the current flow control ratio is equal to the target flow control ratio, step S1007 is executed; if the current flow control ratio is not equal to the target flow control ratio, go to step S1008;
s1007, determining the preset initial running state as the target running state of the scheduling server;
in the process of executing step S1007, if the current flow control proportion is equal to the target flow control proportion, the scheduling server is considered to reach the flow balance point at that time, and the operation state of the preset initial scheduling server is determined as the target operation state; the possible states of the dispatch server include three states, namely, a full request response state, an emergency request response state and a traffic rebalancing state, and a state cycle diagram of the dispatch server is shown in fig. 8, where a state cycle of one dispatch server starts from the full request response state, and the operation state of the initial dispatch server is preset to be the full request response state, so that the full request response state is determined to be the target operation state of the dispatch server.
When the scheduling server is in a full request response state, the received scheduling request is distributed to the video servers according to the labels of the target video servers; when the dispatching server is in an emergency request response state, only distributing a video server for dispatching requests carrying first emergency parameters for representing emergency dispatching; and when the dispatching server is in a flow rebalancing state, the video server is distributed to the dispatching request according to the target flow control proportion.
S1008, acquiring the running time of the scheduling server in the current running state;
s1009, obtaining the current scheduling request processing amount of the video server in the target video server cluster, and calculating the current scheduling request total processing amount and the current scheduling request distribution ratio of the target video server cluster according to the current scheduling request processing amount;
in the process of executing step S1009, the total current request processing amount is the sum of the current scheduling request processing amounts of the video servers in the target video server cluster, and the current scheduling request allocation ratio is the ratio of the current scheduling request processing amounts of the video servers in the target video server cluster.
S1010, if the running time length is greater than the running time length threshold value, or the total processing capacity of the current scheduling request is greater than the scheduling request total processing capacity threshold value, or the current scheduling request distribution ratio is not in the preset scheduling request distribution ratio range, determining the target running state of the scheduling server according to the preset scheduling server running state switching rule;
in the process of executing step S1010, as shown in the state loop diagram of the scheduling server shown in fig. 8, there are three possible states of the scheduling server, namely, a full request response state, an emergency request response state, and a traffic rebalancing state.
Assuming that two video servers are arranged in a target video server cluster and are marked as M and N, the target flow control ratio of the target video server cluster is 2h: h-2: 1, and according to a preset flow offset, assuming that the target flow control ratio is 2, the preset scheduling request allocation ratio range is 1-4; assuming that the threshold of the running time length is 10S and the threshold of the total processing capacity of the scheduling request is 1000, when the running time length is greater than 10S or the total processing capacity of the current scheduling request is greater than 1000 or the allocation ratio of the current scheduling request is not in the range of 1-4, if the current running state is the "full request response state", the target running state is the "emergency request response state", and similarly, if the current state is the "emergency request response state", the target running state is the "flow rebalance state".
And S1011, if the running time length is not greater than the running time length threshold, the total processing capacity of the current scheduling request is not greater than the scheduling request total processing capacity threshold, and the current scheduling request allocation ratio is within the preset scheduling request allocation ratio range, determining the current running state of the scheduling server as the target running state.
S407, distributing video servers for the scheduling request according to the target running state, the preset flow upper limit value of the video servers in the target video server cluster, the target video server label and the emergency parameter;
in the specific implementation process, in step S407, "allocate a video server to a scheduling request according to a target running state, a preset flow upper limit value of a video server in a target video server cluster, a target video server tag, and an emergency parameter", the following steps may be specifically adopted, and a flowchart of the method is as shown in fig. 9:
s1012, identifying the state type of the target running state, wherein the state type comprises a full request response state, an emergency request response state or a flow rebalancing state;
s1013, calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of the video servers in the target video server cluster;
s1014, judging whether the label content of the target video server label is empty or not under the condition that the state type is the full request response state; if the tag content of the target video server tag is empty, execute step S1015; if the tag content of the target video server tag is not empty, executing step S1016;
s1015, distributing the video server to the scheduling request according to the target flow control proportion;
s1016, distributing video servers for the scheduling request according to the target video server label;
s1017, under the condition that the state type is an emergency request response state, if the emergency parameter is a first emergency parameter used for representing non-emergency scheduling, distributing a video server for the scheduling request according to a target flow control proportion; if the emergency parameter is a second emergency parameter for representing emergency scheduling, distributing a video server for the scheduling request according to the target video server label;
and S1018, under the condition that the state type is the flow rebalancing state, allocating a video server to the scheduling request according to the target flow control proportion.
The process of "allocating a video server to a scheduling request according to a target flow control ratio" in step S1015, step S1017, and step S1018 is as follows:
calculating the current flow control proportion of the target video server cluster based on the current flow value of the video servers in the target video server cluster; and comparing the current flow rate proportion with the target flow rate proportion, and supplementing the video servers with insufficient flow rate, for example, if two video servers are in the target video server cluster and are marked as M and N, the flow rate control proportion of the target video server cluster is 2h: 2:1, the current flow rate value of the video server M is 10, and the current flow rate value of the video server N is 4, the scheduling request is distributed to the video server N. Of course, if the current traffic value of the video server N is 5, the scheduling request may be allocated according to a preset allocation rule, for example, according to a preset allocation rule of "video server M is first and then video server N", the scheduling request should be allocated to the video server M.
And if the target video server is not in the target video server cluster, allocating the video server to the scheduling request according to the flow control strategy, and sending the label of the allocated video server to the client.
In this embodiment, the flow control policy is an existing "allocating a video server to a scheduling request according to a flow control ratio in a scheduling area".
The above steps S201 to S205 are only one preferred implementation manner of the "pre-established priority identification model" process in step S20 disclosed in the embodiment of the present application, and the specific implementation manner of the process may be arbitrarily set according to the needs of the user, and is not limited herein.
The above steps S301 to S305 are only a preferred implementation manner of the process of "determining the target video server cluster of the client according to the target priority and the target probability" in step S30 disclosed in this embodiment of the present application, and a specific implementation manner of this process may be arbitrarily set according to own requirements, which is not limited herein.
The above steps S401 to S404 are only a preferred implementation manner of the process of "allocating a video server from a target video server cluster to a client" in step S40 disclosed in this embodiment of the application, and a specific implementation manner of this process may be arbitrarily set according to its own requirements, and is not limited herein.
The above steps S1001 to S1003 are only a preferred implementation manner of the process of "allocating a video server to a scheduling request in a scheduling request queue according to a preset traffic upper limit value of a video server in a target video server cluster and a target video server tag" in step S404 disclosed in this embodiment, and a specific implementation manner related to this process may be arbitrarily set according to a need of the process, which is not limited herein.
The above steps S405 to S407 are only one preferred implementation manner of the process of "allocating a video server from a target video server cluster to a client" in step S40 disclosed in this embodiment of the application, and the specific implementation manner of this process may be arbitrarily set according to its own requirements, and is not limited herein.
The above steps S1004 to S1011 are only one preferred implementation manner of the process of "determining the target operating state of the scheduling server" of step S406 disclosed in the embodiment of the present application, and the specific implementation manner of this process may be arbitrarily set according to the needs of the user, and is not limited herein.
The above steps S1012 to S1018 are only a preferred implementation manner of the process of "allocating a video server to a scheduling request according to the target running state, the preset traffic upper limit value of the video server in the target video server cluster, the target video server tag, and the emergency parameter" in step S407 disclosed in this embodiment of the present application, and a specific implementation manner related to this process may be arbitrarily set according to a requirement of the process, which is not limited herein.
The video CDN calling optimization method provided by the embodiment of the invention identifies the target priority and the target probability of the client by utilizing the pre-established priority identification model, further determines the target video server cluster of the client, and distributes the video servers to the client. Based on the method disclosed by the invention, the grade of the user can be identified, and the targeted scheduling service is provided for the user according to the identification result.
Based on the video CDN scheduling optimization method provided by the above embodiment, an embodiment of the present invention correspondingly provides a device for executing the video CDN scheduling optimization method, where a schematic structural diagram of the video CDN scheduling optimization device is shown in fig. 10, and the method includes: the system comprises an acquisition module 10, a first determination module 20, a second determination module 30 and a distribution module 40, wherein the first determination module 20 comprises a model establishing unit 201;
the acquiring module 10 is configured to, when receiving a scheduling request sent by a client, acquire target associated log data of the client according to the scheduling request;
a model establishing unit 201 for establishing a priority identification model in advance;
a first determining module 20, configured to determine a target priority of the client and a target probability corresponding to the target priority according to the target-associated log data and a pre-established priority identification model;
a second determining module 30, configured to determine a target video server cluster of the client according to the target priority and the target probability;
and the distribution module 40 is used for distributing the video server for the client from the target video server cluster and sending the label of the distributed video server to the client.
In some other embodiments, the model establishing unit 201 is specifically configured to:
calling first log data of a scheduling server and second log data of a preset video server; selecting scheduling data of the historical access client from the first log data, and selecting downloading data of the historical access client from the second log data; taking scheduling data and downloaded data as historical associated log data of a client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority; respectively extracting data characteristics of historical associated log data and priority characteristics of priority labels; and establishing a priority identification model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
In some other embodiments, the second determining module 30 is specifically configured to:
judging whether the target probability is smaller than a probability threshold value; if the target probability is smaller than the probability threshold, re-determining a new target priority of the client and a new target probability corresponding to the new target priority for the target associated log data according to a preset priority marking rule; judging whether the new target probability is smaller than a probability threshold value; if the new target probability is not less than the probability threshold, determining a target video server cluster of the client according to the new target priority; and if the target probability is not less than the probability threshold, determining the target video server cluster of the client according to the target priority.
In some other embodiments, the allocating module 40 is specifically configured to:
under the condition that the calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by a client, and the emergency parameter is used for representing the emergency degree of scheduling; if the target video server is in the target video server cluster and the emergency parameter is used for representing non-emergency scheduling, extracting a scheduling request; generating a scheduling request queue formed by scheduling requests; and distributing the video servers for the scheduling requests in the scheduling request queue according to the preset flow upper limit value of the video servers in the target video server cluster and the target video server label.
In some other embodiments, the allocating module 40 is specifically configured to:
under the condition that the calling request carries a target video server label and an emergency parameter, determining a target video server corresponding to the target video server label, wherein the target video server label is used for identifying a video server predetermined by a client, and the emergency parameter is used for representing the emergency degree of scheduling; if the target video server is in the target video server cluster, determining a target running state of the scheduling server; and distributing the video server for the scheduling request according to the target running state, the preset flow upper limit value of the video server in the target video server cluster, the target video server label and the emergency parameter.
The video CDN retrieval optimization device provided by the embodiment of the invention identifies the target priority and the target probability of the client by using the pre-established priority identification model, further determines the target video server cluster of the client, and distributes the video servers to the client. Based on the device disclosed by the invention, the grade of the user can be identified, and the targeted scheduling service is provided for the user according to the identification result.
The video user scheduling optimization method, the video user scheduling optimization device and the video user scheduling optimization scheduling server provided by the invention are described in detail, a specific example is applied in the text to explain the principle and the implementation mode of the invention, and the description of the embodiment is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.
It should be noted that, in the present specification, the embodiments are all described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description.
It is further noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include or include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims (10)
1. A video CDN (content delivery network) calling optimization method is applied to a scheduling server and comprises the following steps:
when a scheduling request sent by a client is received, acquiring target associated log data of the client according to the scheduling request, wherein the target associated log data comprises scheduling data and downloading data of the client;
determining a target priority of the client and a target probability corresponding to the target priority according to the target associated log data and a pre-established priority identification model;
determining a target video server cluster of the client according to the target priority and the target probability, wherein the target video server cluster is determined according to the target priority under the condition that the target probability is not less than a probability threshold;
and distributing a video server for the client from the target video server cluster, and sending the label of the distributed video server to the client.
2. The method of claim 1, wherein pre-building a priority recognition model comprises:
calling first log data of the scheduling server and second log data of a preset video server;
selecting scheduling data of a historical access client from the first log data, and selecting downloading data of the historical access client from the second log data;
taking the scheduling data and the downloading data as historical associated log data of the historical access client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority;
respectively extracting the data characteristics of the historical associated log data and the priority characteristics of the priority labels;
and establishing a priority identification model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
3. The method of claim 1, wherein determining the target video server cluster for the client based on the target priority and the target probability comprises:
judging whether the target probability is smaller than a probability threshold value;
if the target probability is smaller than the probability threshold, re-determining a new target priority of the client and a new target probability corresponding to the new target priority for the target associated log data according to a preset priority marking rule;
judging whether the new target probability is smaller than the probability threshold value;
if the new target probability is not smaller than the probability threshold, determining a target video server cluster of the client according to the new target priority;
and if the target probability is not smaller than the probability threshold, determining a target video server cluster of the client according to the target priority.
4. The method of claim 1, wherein said assigning a video server to the client from the target video server cluster comprises:
determining a target video server corresponding to a target video server label under the condition that the scheduling request carries the target video server label and an emergency parameter, wherein the target video server label is used for identifying a video server predetermined by the client, and the emergency parameter is used for representing the scheduling emergency degree;
if the target video server is in the target video server cluster and the emergency parameter is used for representing non-emergency scheduling, extracting the scheduling request;
generating a scheduling request queue formed by the scheduling requests;
and distributing a video server for the scheduling request in the scheduling request queue according to a preset flow upper limit value of the video server in the target video server cluster and the target video server label.
5. The method according to claim 4, wherein said allocating video servers for the scheduling requests in the scheduling request queue according to the preset traffic upper limit of video servers in the target video server cluster and the target video server tag comprises:
calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
selecting a scheduling request with empty label content of a target video server in the scheduling request queue, and distributing a video server for the selected scheduling request according to the target flow control proportion;
and reallocating the video servers to the scheduling requests of the unallocated video servers according to the target flow control proportion, wherein the scheduling requests of the unallocated video servers comprise the scheduling requests which are not selected in the scheduling request queue and the scheduling requests of the unallocated video servers in the selected scheduling requests.
6. The method of claim 1, wherein said assigning a video server to the client from the target video server cluster comprises:
determining a target video server corresponding to a target video server label under the condition that the scheduling request carries the target video server label and an emergency parameter, wherein the target video server label is used for identifying a video server predetermined by the client, and the emergency parameter is used for representing the scheduling emergency degree;
if the target video server is in the target video server cluster, determining a target running state of the scheduling server, wherein the target running state comprises one of a full request response state, an emergency request response state and a flow rebalancing state, and the target running state is determined according to a flow control proportion of video servers in the target video server cluster, a scheduling request processing amount of the video servers in the target video server cluster and a running time length of the scheduling server in the current running state;
and distributing a video server to the scheduling request according to the target running state, a preset flow upper limit value of a video server in the target video server cluster, the target video server label and the emergency parameter.
7. The method of claim 6, wherein determining the target operational state of the dispatch server comprises:
calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
calculating the current flow control proportion of the target video server cluster based on the current flow value of the video servers in the target video server cluster;
judging whether the current flow control proportion is equal to the target flow control proportion or not;
if the current flow control proportion is equal to the target flow control proportion, determining a preset initial operation state as a target operation state of the scheduling server;
if the current flow control proportion is not equal to the target flow control proportion, acquiring the running time of the scheduling server in the current running state;
acquiring the current scheduling request processing amount of a video server in the target video server cluster, and calculating the total processing amount of the current scheduling request of the target video server cluster and the current scheduling request distribution ratio according to the current scheduling request processing amount;
if the running time length is greater than a running time length threshold value, or the total processing capacity of the current scheduling request is greater than a scheduling request total processing capacity threshold value, or the current scheduling request distribution ratio is not in a preset scheduling request distribution ratio range, determining a target running state of the scheduling server according to a preset scheduling server running state switching rule;
and if the running time length is not greater than a running time length threshold value, the total processing capacity of the current scheduling request is not greater than a scheduling request total processing capacity threshold value, and the current scheduling request distribution ratio is in a preset scheduling request distribution ratio range, determining the current running state of the scheduling server as a target running state.
8. The method of claim 6, wherein the allocating a video server for the scheduling request according to the target operating status, the preset upper traffic limit of the video servers in the target video server cluster, the target video server tag, and the emergency parameter comprises:
identifying the state type of the target operation state, wherein the state type comprises a full request response state, an emergency request response state or a flow rebalance state;
calculating a target flow control proportion of the target video server cluster according to a preset flow upper limit value of a video server in the target video server cluster;
judging whether the label content of the target video server label is empty or not under the condition that the state type is the full request response state;
if the label content of the target video server label is empty, distributing a video server to the scheduling request according to the target flow control proportion;
if the label content of the target video server label is not empty, distributing a video server to the scheduling request according to the target video server label;
under the condition that the state type is the emergency request response state, if the emergency parameter is a first emergency parameter used for representing non-emergency scheduling, distributing a video server for the scheduling request according to the target flow control proportion;
if the emergency parameter is a second emergency parameter used for representing emergency scheduling, distributing a video server for the scheduling request according to the target video server label;
and under the condition that the state type is the flow rebalancing state, distributing a video server to the scheduling request according to the target flow control proportion.
9. A video CDN retrieval optimization apparatus, comprising: the system comprises an acquisition module, a first determination module, a second determination module and a distribution module, wherein the first determination module comprises a model establishing unit;
the acquisition module is used for acquiring target associated log data of a client according to a scheduling request sent by the client when the scheduling request is received, wherein the target associated log data comprises scheduling data and downloading data of the client;
the model establishing unit is used for establishing a priority identification model in advance;
the first determining module is used for determining the target priority of the client and the target probability corresponding to the target priority according to the target associated log data and a pre-established priority identification model;
the second determining module is configured to determine a target video server cluster of the client according to the target priority and the target probability, where the target video server cluster is determined according to the target priority when the target probability is not less than a probability threshold;
the distribution module is used for distributing the video server for the client from the target video server cluster and sending the label of the distributed video server to the client.
10. The apparatus according to claim 9, wherein the model building unit is specifically configured to:
calling first log data of a scheduling server and second log data of a preset video server; selecting scheduling data of a historical access client from the first log data, and selecting downloading data of the historical access client from the second log data; taking the scheduling data and the downloaded data as historical associated log data of the client, and adding a priority label to the historical associated log data according to a preset priority marking rule, wherein the priority label comprises a priority and a probability corresponding to the priority; respectively extracting the data characteristics of the historical associated log data and the priority characteristics of the priority labels; and establishing a priority identification model based on the data characteristics, the priority characteristics and a preset supervised learning algorithm.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711486733.0A CN107948004B (en) | 2017-12-29 | 2017-12-29 | Video CDN (content delivery network) calling optimization method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711486733.0A CN107948004B (en) | 2017-12-29 | 2017-12-29 | Video CDN (content delivery network) calling optimization method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107948004A CN107948004A (en) | 2018-04-20 |
CN107948004B true CN107948004B (en) | 2021-06-22 |
Family
ID=61937126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711486733.0A Active CN107948004B (en) | 2017-12-29 | 2017-12-29 | Video CDN (content delivery network) calling optimization method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107948004B (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109547546B (en) * | 2018-11-12 | 2020-06-05 | 网宿科技股份有限公司 | Scheduling method of request task and scheduling center server |
CN109768879B (en) * | 2018-12-14 | 2022-09-02 | 北京爱奇艺科技有限公司 | Method and device for determining target service server and server |
CN110213623B (en) * | 2019-06-03 | 2021-08-06 | 上海哔哩哔哩科技有限公司 | Video uploading method, video uploading device and computer readable storage medium |
CN111277511B (en) * | 2020-01-19 | 2022-03-01 | 深圳壹账通智能科技有限公司 | Transmission rate control method, device, computer system and readable storage medium |
CN112134811B (en) * | 2020-09-30 | 2022-08-09 | 安徽极玩云科技有限公司 | CDN cloud platform flow scheduling method |
CN115379243B (en) * | 2021-05-21 | 2024-02-27 | 北京字跳网络技术有限公司 | CDN scheduling method, device, equipment and storage medium |
CN113556291B (en) * | 2021-07-08 | 2024-04-30 | 北京奇艺世纪科技有限公司 | Flow tracking method, device, equipment and computer readable medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801819A (en) * | 2005-01-04 | 2006-07-12 | 国际商业机器公司 | Confirming apparatus of priority, service treating and allocating device, and control method |
CN101261592A (en) * | 2007-03-07 | 2008-09-10 | 国际商业机器公司 | Method and apparatus for scheduling task request |
US7680897B1 (en) * | 2003-04-08 | 2010-03-16 | Novell, Inc. | Methods and systems for managing network traffic |
CN105897837A (en) * | 2015-12-07 | 2016-08-24 | 乐视云计算有限公司 | Content distribution task submitting method and system |
CN105898402A (en) * | 2015-11-13 | 2016-08-24 | 乐视云计算有限公司 | Network scheduling method and system |
CN105898383A (en) * | 2015-11-26 | 2016-08-24 | 乐视云计算有限公司 | Bandwidth allocation method and system |
CN106652545A (en) * | 2015-10-28 | 2017-05-10 | 赵依军 | Method and system for optimizing processing of parking space reservation requests |
-
2017
- 2017-12-29 CN CN201711486733.0A patent/CN107948004B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7680897B1 (en) * | 2003-04-08 | 2010-03-16 | Novell, Inc. | Methods and systems for managing network traffic |
CN1801819A (en) * | 2005-01-04 | 2006-07-12 | 国际商业机器公司 | Confirming apparatus of priority, service treating and allocating device, and control method |
CN101261592A (en) * | 2007-03-07 | 2008-09-10 | 国际商业机器公司 | Method and apparatus for scheduling task request |
CN106652545A (en) * | 2015-10-28 | 2017-05-10 | 赵依军 | Method and system for optimizing processing of parking space reservation requests |
CN105898402A (en) * | 2015-11-13 | 2016-08-24 | 乐视云计算有限公司 | Network scheduling method and system |
CN105898383A (en) * | 2015-11-26 | 2016-08-24 | 乐视云计算有限公司 | Bandwidth allocation method and system |
CN105897837A (en) * | 2015-12-07 | 2016-08-24 | 乐视云计算有限公司 | Content distribution task submitting method and system |
Also Published As
Publication number | Publication date |
---|---|
CN107948004A (en) | 2018-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107948004B (en) | Video CDN (content delivery network) calling optimization method and device | |
CN112162865B (en) | Scheduling method and device of server and server | |
US10572285B2 (en) | Method and apparatus for elastically scaling virtual machine cluster | |
CN109165093B (en) | System and method for flexibly distributing computing node cluster | |
WO2017080172A1 (en) | Network scheduling method and system | |
CN111131639A (en) | Customer service seat allocation method, customer service seat allocation device, server and storage medium | |
CN107451853B (en) | Method, device and system for real-time red packet distribution and storage medium | |
CN110740164B (en) | Server determination method, regulation and control method, device, equipment and storage medium | |
CN108093272B (en) | Video CDN scheduling optimization method and device | |
US20050060493A1 (en) | Negotiated distribution of cache content | |
CN111813545A (en) | Resource allocation method, device, medium and equipment | |
US7085894B2 (en) | Selectively accepting cache content | |
CN106375471B (en) | Edge node determination method and device | |
CN107291744A (en) | It is determined that and with the method and device of the relationship between application program | |
CN103746934A (en) | CDN bandwidth balancing method, CDN control center and system | |
CN109981795B (en) | Resource request scheduling method and device | |
CN108184149B (en) | Video CDN scheduling optimization method and device | |
KR100671635B1 (en) | Service management using multiple service location managers | |
KR101613513B1 (en) | Virtual machine placing method and system for guarantee of network bandwidth | |
CN118210572A (en) | Page resource loading method, equipment, program product and storage medium | |
CN105187514A (en) | Management method for cloud application and system thereof | |
CN108600147B (en) | Downloading speed prediction method and device | |
CN113630457A (en) | Task scheduling method and device, computer equipment and storage medium | |
CN109491794A (en) | Method for managing resource, device and electronic equipment | |
CN110750350B (en) | Large resource scheduling method, system, device and readable storage medium |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |