CN109688421B - Request message processing method, device and system, server and storage medium - Google Patents

Request message processing method, device and system, server and storage medium Download PDF

Info

Publication number
CN109688421B
CN109688421B CN201811621453.0A CN201811621453A CN109688421B CN 109688421 B CN109688421 B CN 109688421B CN 201811621453 A CN201811621453 A CN 201811621453A CN 109688421 B CN109688421 B CN 109688421B
Authority
CN
China
Prior art keywords
service node
period
target sub
request message
service
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
Application number
CN201811621453.0A
Other languages
Chinese (zh)
Other versions
CN109688421A (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.)
Guangzhou Huaduo Network Technology Co Ltd
Original Assignee
Guangzhou Huaduo Network Technology Co 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 Guangzhou Huaduo Network Technology Co Ltd filed Critical Guangzhou Huaduo Network Technology Co Ltd
Priority to CN201811621453.0A priority Critical patent/CN109688421B/en
Publication of CN109688421A publication Critical patent/CN109688421A/en
Priority to PCT/CN2019/120027 priority patent/WO2020134753A1/en
Application granted granted Critical
Publication of CN109688421B publication Critical patent/CN109688421B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level

Abstract

The application discloses a request message processing method, a device and a system, a server and a storage medium, belonging to the technical field of networks. The method comprises the following steps: acquiring a historical residual bandwidth value of each service node in a request message processing system, wherein the request message processing system comprises a plurality of service nodes; determining a scheduling coefficient of each service node based on the historical residual bandwidth value of each service node, wherein the scheduling coefficient of any service node is used for reflecting the scheduling capability of any service node relative to other service nodes, and the other service nodes are service nodes except any service node in the plurality of service nodes; distributing the received plurality of request messages to the plurality of service nodes based on the scheduling coefficient of each service node. The method and the device effectively improve the efficiency of request message scheduling.

Description

Request message processing method, device and system, server and storage medium
Technical Field
The present application relates to the field of network technologies, and in particular, to a method, an apparatus, a system, a server, and a storage medium for processing a request message.
Background
With the increase of the number of users of the network live broadcast platform, the traffic consumed by the users for sending the request message on the network live broadcast platform is gradually increased, and how to process the request message sent in the live broadcast process is an urgent problem to be solved. The request message sent in the live broadcast process may include a request message sent by the viewer to the live broadcast room, or the live broadcast room is used to send a request message of the video stream generated in the live broadcast process to the viewer.
In the related art, after receiving a request message, a webcast server generally distributes the request message to a plurality of Content Delivery Networks (CDNs), and distributes the request message to a service node closest to a user through the CDNs, so that the service node closest to the user provides a service for the user, thereby improving a response speed of the service. The implementation process of distributing the request message to the plurality of CDNs may include: and obtaining the service quality score of each CDN according to the specified service quality index, and then distributing the request message to the CDN according to the score.
However, due to the limitation of the CDN bandwidth, when a request message of the webcast platform has a high concurrency condition, the request message cannot be effectively scheduled, and thus the scheduling efficiency of the request message is low.
Disclosure of Invention
The application provides a request message processing method, a device and a system, a server and a storage medium, which can solve the problem of low efficiency of request message scheduling in the prior art, and the technical scheme is as follows:
in a first aspect, a method for processing a request message is provided, where the method includes:
acquiring a historical residual bandwidth value of each service node in a request message processing system, wherein the request message processing system comprises a plurality of service nodes;
determining a scheduling coefficient of each service node based on the historical residual bandwidth value of each service node, wherein the scheduling coefficient of any service node is used for reflecting the scheduling capability of any service node relative to other service nodes, and the other service nodes are service nodes except any service node in the plurality of service nodes;
distributing the received plurality of request messages to the plurality of service nodes based on the scheduling coefficient of each service node.
Optionally, the determining a scheduling coefficient of each service node based on the historical remaining bandwidth value of each service node includes:
determining a scheduling coefficient of a first service node in each target sub-period based on a historical remaining bandwidth value of the first service node in each target sub-period in a target period, wherein the first service node is any service node in the plurality of service nodes, the target period comprises N target sub-periods, and N is a positive integer.
Optionally, the distributing the received plurality of request messages to the plurality of service nodes based on the scheduling coefficient of each service node includes:
dividing the plurality of request messages into the N shares;
for each request message, based on the scheduling coefficient of the first service node in each target sub-period, distributing each request message to the plurality of service nodes in a manner that the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, before the distributing the received plurality of request messages to the plurality of service nodes based on the scheduling coefficient of each service node, the method further includes:
respectively receiving at least one request message through N groups of servers, wherein the N groups of servers correspond to the N target sub-periods one by one;
the distributing the received plurality of request messages to the plurality of service nodes based on the scheduling coefficient of each service node comprises:
for a request message received by any group of servers, based on a scheduling coefficient of the first service node in a target sub-period corresponding to the any group of servers, distributing each request message to the plurality of service nodes in a manner that the number of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, the scheduling coefficient of the first serving node in the first target sub-period is: the ratio of the historical remaining bandwidth value of the first service node in the first target sub-period to the total historical remaining bandwidth value, where the total historical remaining bandwidth value is the sum of the historical remaining bandwidth values of the plurality of service nodes in the first target sub-period, and the first target sub-period is any one of the N target sub-periods.
Optionally, the obtaining the historical remaining bandwidth value of each service node in the request message processing system includes:
and acquiring the historical residual bandwidth value of the first service node in each target sub-period.
Optionally, the obtaining the historical remaining bandwidth value of the first service node in each target sub-period includes:
acquiring a historical use bandwidth value of the first service node in the first target sub-period, wherein the first target sub-period is any one of the N target sub-periods;
determining a difference between the available bandwidth quota value of the first service node and the historical used bandwidth value as a historical remaining bandwidth value of the first service node within the first target sub-period.
Optionally, before the obtaining of the historical remaining bandwidth value of the first service node in each target sub-period, the method further includes:
predicting a future bandwidth usage value of the first serving node within the first target sub-period based on a historical bandwidth usage value of the first serving node within a last specified period of the first target sub-period, the last specified period being a period chronologically before the first target sub-period, the first target sub-period being any one of the N target sub-periods;
the obtaining of the historical remaining bandwidth value of the first service node in each target sub-period includes:
acquiring a historical use bandwidth value of the first service node in the first target sub-period;
determining a difference between an available bandwidth amount value of the first service node and a total amount of used bandwidth as a sum of the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period.
In a second aspect, a request message processing apparatus is provided, the apparatus including:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring the historical residual bandwidth value of each service node in a request message processing system, and the request message processing system comprises a plurality of service nodes;
a determining unit, configured to determine a scheduling coefficient of each service node based on a historical remaining bandwidth value of each service node, where the scheduling coefficient of any service node is used to reflect a scheduling capability of the any service node relative to other service nodes, and the other service nodes are service nodes other than the any service node in the plurality of service nodes;
a sending unit, configured to distribute the received multiple request messages to the multiple service nodes based on the scheduling coefficient of each service node.
Optionally, the determining unit is configured to:
determining a scheduling coefficient of a first service node in each target sub-period based on a historical remaining bandwidth value of the first service node in each target sub-period in a target period, wherein the first service node is any service node in the plurality of service nodes, the target period comprises N target sub-periods, and N is a positive integer.
Optionally, the sending unit includes:
a dividing subunit, configured to divide the plurality of request messages into the N shares;
a sending subunit, configured to, for each request message, distribute each request message to the multiple service nodes in a manner that, based on the scheduling coefficient of the first service node in each target sub-period, the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, the method further comprises: respectively receiving at least one request message through N groups of servers, wherein the N groups of servers correspond to the N target sub-periods one by one;
correspondingly, the sending unit includes: for a request message received by any group of servers, based on a scheduling coefficient of the first service node in a target sub-period corresponding to the any group of servers, distributing each request message to the plurality of service nodes in a manner that the number of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, the scheduling coefficient of the first serving node in the first target sub-period is: the ratio of the historical remaining bandwidth value of the first service node in the first target sub-period to the total historical remaining bandwidth value, where the total historical remaining bandwidth value is the sum of the historical remaining bandwidth values of the plurality of service nodes in the first target sub-period, and the first target sub-period is any one of the N target sub-periods.
Optionally, the obtaining unit includes: and the obtaining subunit is configured to obtain a historical remaining bandwidth value of the first service node in each target sub-period.
Optionally, the obtaining subunit is configured to:
acquiring a historical use bandwidth value of the first service node in the first target sub-period, wherein the first target sub-period is any one of the N target sub-periods;
determining a difference between the available bandwidth quota value of the first service node and the historical used bandwidth value as a historical remaining bandwidth value of the first service node within the first target sub-period.
Optionally, the obtaining unit further includes:
a predicting sub-unit, configured to predict a future bandwidth usage value of the first service node within the first target sub-period based on a historical bandwidth usage value of the first service node within a last specified period of the first target sub-period, where the last specified period is a period chronologically before the first target sub-period, and the first target sub-period is any one of the N target sub-periods;
the obtaining subunit is further configured to:
acquiring a historical use bandwidth value of the first service node in the first target sub-period;
determining a difference between an available bandwidth amount value of the first service node and a total amount of used bandwidth as a sum of the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period.
In a third aspect, a request message processing system is provided, including: a plurality of service nodes and the request message processing apparatus of any of the second aspects.
Optionally, the service node is a content delivery network CDN node.
In a fourth aspect, a server is provided that includes a processor and a memory;
wherein the content of the first and second substances,
the memory is used for storing a computer program;
the processor is configured to execute the program stored in the memory, and implement the request message processing method according to any one of the first aspect.
In a fifth aspect, a storage medium is provided, in which a computer program is stored, and the computer program realizes the request message processing method of any one of the first aspect when executed by a processor.
The beneficial effect that technical scheme that this application provided brought includes at least:
the request message processing method, the device and the system, the server and the storage medium provided by the application determine the scheduling coefficient of the service node based on the historical residual bandwidth value by acquiring the historical residual bandwidth value of each service node, and distributes the request message to a plurality of service nodes based on the scheduling coefficient of each service node, compared to the related art, since any scheduling coefficient is used to reflect the scheduling capabilities of any serving node relative to other serving nodes in the request message processing system, when the request message of the network live broadcast platform is highly concurrent, the first server can distribute the request message for the service nodes according to the scheduling capability of each service node, and the concurrent request message is distributed to the plurality of service nodes according to the scheduling coefficient, so that the plurality of service nodes jointly bear the scheduling pressure brought by the high-concurrency of the request message, and the scheduling efficiency of the request message is improved.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a request message processing system related to a request message processing method according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of another request message processing system according to an embodiment of the present invention;
fig. 3 is a flowchart of a request message processing method according to an embodiment of the present invention;
fig. 4 is a flowchart of another request message processing method according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a scheduling coefficient obtaining period and a message sampling period according to an embodiment of the present invention;
fig. 6 is a flowchart of a method for obtaining a historical remaining bandwidth value of each service node in a request message processing system according to an embodiment of the present invention;
fig. 7 is a flowchart of another method for obtaining a historical bandwidth remaining value of each service node in a request message processing system according to an embodiment of the present invention;
fig. 8 is a schematic diagram of a period from when a scheduling coefficient of a service node is acquired to before the scheduling coefficient is acquired again according to an embodiment of the present invention;
fig. 9 is a schematic view illustrating a traffic change of a service node when a request message is distributed according to a request message processing method provided in the related art;
fig. 10 is a schematic view illustrating a traffic change of a service node when a request message is distributed according to a request message processing method provided in an embodiment of the present invention;
fig. 11 is a schematic diagram of a request message processing apparatus according to an embodiment of the present invention;
fig. 12 is a schematic diagram of a transmitting unit according to an embodiment of the present invention;
fig. 13 is a schematic diagram of another request message processing apparatus according to an embodiment of the present invention;
FIG. 14 is a schematic diagram of an acquisition unit provided by an embodiment of the invention;
fig. 15 is a schematic structural diagram of a server according to an embodiment of the present invention.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Fig. 1 is a schematic structural diagram of a request message processing system related to a request message processing method according to an embodiment of the present invention. As shown in fig. 1, the system may include: a first server 110 and a serving node 120.
The first server 110 and the service node 120 may be connected through a wired or wireless network. The first server 110 may be a server, a server cluster composed of several servers, a cloud computing service center, or the like. The service node 120 may be a CDN node, a software defined network node, and the like. The request message processing system may include a plurality of service nodes 120, and fig. 1 is a schematic diagram of the request message processing system including 2 service nodes 120.
Optionally, the first server 110 is configured to obtain the scheduling coefficients of the service nodes 120, and distribute the request message to the service nodes 120 according to the scheduling coefficient of each service node 120. After receiving the request message distributed by the first server 110, the service node 120 may distribute the request message to a server (not shown in fig. 1) closest to the sender of the request message, so as to provide a service to the user based on the request message.
Fig. 2 is a schematic structural diagram of another request message processing system according to an embodiment of the present invention. As illustrated in fig. 2, the system may include: a first server 110, a service node 120, a terminal 130 and a second server 140.
The terminal 130 and the first server 110, and the terminal 130 and the second server 140 may be connected through a wired or wireless network; the service node 120 and the first server 110, and the service node 120 and the second server 140 may be connected through a wired or wireless network. The terminal 130 may be a smart phone, a computer, a multimedia player, an e-reader, a wearable device, etc., and a live client may be installed on the terminal 130. The second server 140 may be a server, a server cluster composed of several servers, a cloud computing service center, or the like.
Alternatively, the terminal may send the request message to the first server 110, and the first server 110 may obtain the scheduling coefficient of each service node 120 and distribute the received multiple request messages to the multiple service nodes 120 according to the scheduling coefficient of each service node 120. The service node 120 may distribute the received request message to the second server 140 closest to the terminal 130. Second server 140 may provide a service to terminal 130 according to the content of the received request message.
Next, a request message processing method provided in an embodiment of the present invention is described in detail.
Fig. 3 is a flowchart of a request message processing method according to an embodiment of the present invention. As shown in fig. 3, the method for scheduling a request message may include:
step 301, obtaining the historical remaining bandwidth value of each service node in the request message processing system.
The request message processing system may be the request message processing system shown in fig. 1 or fig. 2, and the request message processing system may include a plurality of service nodes. The historical remaining bandwidth is the bandwidth that the serving node can use to send data. The service node needs to consume traffic when sending the request message, and the consumed traffic reduces the bandwidth that can be used by the service node. When the serving node has more bandwidth used, the serving node has less remaining bandwidth.
Step 302, determining a scheduling coefficient of each service node based on the historical residual bandwidth value of each service node.
The scheduling coefficient of any service node may be used to reflect the scheduling capability of the service node relative to other service nodes, where the other service nodes are service nodes other than the service node.
Step 303, distributing the received plurality of request messages to a plurality of service nodes based on the scheduling coefficient of each service node.
In summary, the request message processing method provided in the embodiments of the present invention obtains the historical remaining bandwidth value of each service node, determines the scheduling coefficient of the service node based on the historical remaining bandwidth value, and distributes the request message to a plurality of service nodes based on the scheduling coefficient of each service node, compared to the related art, since any scheduling coefficient is used to reflect the scheduling capabilities of any serving node relative to other serving nodes in the request message processing system, when the request message of the network live broadcast platform is highly concurrent, the first server can distribute the request message for the service nodes according to the scheduling capability of each service node, and the concurrent request message is distributed to the plurality of service nodes according to the scheduling coefficient, so that the plurality of service nodes jointly bear the scheduling pressure brought by the high-concurrency of the request message, and the scheduling efficiency of the request message is improved.
Fig. 4 is a flowchart of another request message processing method according to an embodiment of the present invention. The method may be applied to a first server in a request message processing system as shown in fig. 1 or fig. 2. As shown in fig. 4, the method may include:
step 401, obtaining the historical remaining bandwidth value of each service node in the request message processing system.
Alternatively, the first server may obtain the historical remaining bandwidth values of the service nodes in real time. For example, at any distribution time, the first server may obtain the historical remaining bandwidth values of the service nodes before the distribution time. Wherein, the distribution time is the time when the request message needs to be distributed.
Or, the first server may obtain a historical remaining bandwidth value of the service node in advance, and cache the historical remaining bandwidth value in the first server, so that the historical remaining bandwidth value is read when the first server needs to use the historical remaining bandwidth value. The first server may obtain the historical remaining bandwidth value of the service node every other target time interval. And the time duration of each target period may be the same or different. When the duration of each target time interval is the same, that is, the historical remaining bandwidth value is periodically acquired, at this time, the target time interval may be referred to as a scheduling coefficient acquisition cycle. And the duration of the scheduling coefficient acquisition period can be determined according to actual needs. For example, the duration of the scheduling coefficient acquisition period may be 10 seconds, 15 seconds, 20 seconds, or the like, which is not limited in this embodiment of the present invention.
Further, each target period may include N target subintervals, where N is a positive integer. After receiving the request message sent by the terminal, the first server may cache the request message in the first server, sample the cached request message according to a specified policy, and then distribute the sampled request message to the service node. At this time, each target sub-period may correspond to one sampling process of the request message. And the duration of each target sub-period may be equal or unequal. For example, when the first server periodically samples the request message, the time duration of each target sub-period is equal and corresponds to the sampling frequency of the first server, and at this time, the target sub-period may be referred to as a message sampling period. In addition, in each target sub-duration, if the service node is distributed with a request message, the request message may cause the remaining bandwidth of the service node to change, and therefore, the first server may respectively obtain the historical remaining bandwidth value of the service node in each target sub-duration, so as to obtain a plurality of historical remaining bandwidth values of the service node in the target time duration.
Alternatively, fig. 5 shows a schematic diagram of one scheduling coefficient acquisition period T2 and a plurality of message sampling periods T1 before the distribution time at T1, and as can be seen from fig. 5, the scheduling coefficient acquisition period T2 includes 8 message sampling periods T1, i.e., N ═ 8.
The following describes an implementation of obtaining the historical remaining bandwidth value by taking the example of obtaining the historical remaining bandwidth value in each target sub-period. Illustratively, step 401 may include at least the following two realizations:
in an implementation manner of step 401, the first server may obtain an available bandwidth quota value of the service node and a historical used bandwidth value of the service node in a target sub-period, and determine a historical remaining bandwidth value of the service node in the target sub-period according to the available bandwidth quota value and the historical used bandwidth value. As shown in fig. 6, the implementation process may include:
step 4011a, obtaining a historical bandwidth usage value of the first service node in the first target sub-period.
The first service node is any one of a plurality of service nodes. The first target subinterval is any one of the N target subintervals.
Optionally, when the historical bandwidth value of the first service node needs to be obtained, the first server may send an obtaining request to the first service node, where the obtaining request may carry an identifier of the first target sub-period, so as to request to obtain the historical bandwidth value of the first service node in the first target sub-period. After receiving the obtaining request, the first service node may send, to the first server, an obtaining response carrying the historical used bandwidth value of the first service node in the first target sub-period. The first server may obtain the historical used bandwidth value of the first service node in the first target sub-period after receiving the obtaining response.
Step 4012a, determining a difference between the available bandwidth quota value of the first service node and the historical used bandwidth value as a historical remaining bandwidth value of the first service node in the first target sub-period.
The first server may have a pre-stored available bandwidth value of the first service node, and after obtaining a historical bandwidth usage value of the first service node in the first target sub-period, the first server may read the available bandwidth value of the first service node. And determining the difference between the available bandwidth value and the historical used bandwidth value as the historical remaining bandwidth value of the first service node in the first target sub-period.
In another implementation manner of step 401, the first server may obtain an available bandwidth quota value of the service node, a historical used bandwidth value and a future used bandwidth value in a target sub-period, and determine a historical remaining bandwidth value of the service node in the target sub-period according to the available bandwidth quota value, the historical used bandwidth value and the future used bandwidth value. As shown in fig. 7, the implementation process may include:
step 4011b, predicting a future bandwidth usage value of the first service node in the first target sub-period based on the historical bandwidth usage value of the first service node in the last designated time period of the first target sub-period.
Optionally, according to a differential control algorithm in an automatic control theory, a historical bandwidth usage value of the first service node in a last specified time period may be subjected to differential processing, so as to obtain a future bandwidth usage value of the first service node in the first target sub-time period. The implementation process of the first server obtaining the historical bandwidth usage value of the first service node in the last specified time period may refer to the implementation process in step 4011 a.
Optionally, the last specified period is a period chronologically preceding the first target sub-period. Alternatively, when the target period is the scheduling coefficient acquisition cycle, the last specified period may include: at least one scheduling coefficient acquisition cycle chronologically preceding the scheduling coefficient acquisition cycle in which the first target sub-period is located. Alternatively, when the first target sub-period is a message sampling period, the last designated period may include: at least one message sample period chronologically preceding the message sample period. And the at least one message sampling period may include: the message sampling period is located in the scheduling coefficient acquisition period where the first target sub-period is located in the time sequence, and/or the message sampling period is located in the scheduling coefficient acquisition period before the scheduling coefficient acquisition period where the first target sub-period is located in the time sequence.
And the first server can predict the future used bandwidth value in real time, namely predict the future used bandwidth value when the historical remaining bandwidth value needs to be acquired. Alternatively, the future-use bandwidth value may be predicted in advance and stored so that the future-use bandwidth value is obtained from the storage location when the historical remaining bandwidth value is obtained.
Meanwhile, for different target sub-periods, the time length of the last designated period corresponding to each target sub-period may be the same or different. For example, the duration of the last specified period corresponding to each target sub-period may be equal to the duration of the scheduling coefficient acquisition period.
And 4012b, obtaining a historical bandwidth usage value of the first service node in the first target sub-period.
The implementation process of step 4012b can refer to the implementation process of step 4011 a.
Step 4013b, determining a difference between the available bandwidth value of the first service node and the total bandwidth used as the historical remaining bandwidth value of the first service node in the first target sub-period.
The total amount of the used bandwidth is the sum of the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period.
Optionally, the first server may store an available bandwidth quota value of the first service node, and after obtaining the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period, the first server may obtain the available bandwidth quota value of the first service node from the first server. Then, the first server determines the sum of the historical bandwidth usage value and the future bandwidth usage value of the first service node as the total bandwidth usage, and determines the difference between the available bandwidth usage value and the total bandwidth usage value of the first service node as the historical remaining bandwidth value of the first service node in the first target sub-period.
Since there is generally a delay in scheduling the request message according to the usage bandwidth compared to the process of acquiring the usage bandwidth of the first service node in the target period, there is a difference between the usage bandwidth acquired by the first server and the actually used bandwidth. Therefore, by acquiring the future used bandwidth value of the first service node in the first target time period and determining the historical remaining bandwidth according to the future used bandwidth value, the historical used bandwidth value and the available bandwidth value, the acquired historical remaining bandwidth can be closer to the actual remaining bandwidth, so that the scheduling coefficient determined according to the historical remaining bandwidth value is more accurate, and the efficiency of distributing the request message according to the scheduling coefficient can be further improved.
Step 402, determining a scheduling coefficient of the first service node in each target sub-period based on the historical remaining bandwidth value of the first service node in each target sub-period in the target period.
Optionally, the scheduling coefficient of the first serving node in the first target sub-period may be: a ratio of a historical remaining bandwidth value of the first service node to a total historical remaining bandwidth value within a first target sub-period. The total historical bandwidth remaining value is the sum of the historical bandwidth remaining values of the plurality of service nodes in the first target sub-period.
By way of example, assume that the request message processing system includes three service nodes, a first service node, a second service node, and a third service node. The historical residual bandwidth values of the first service node, the second service node and the third service node in the first target sub-period are respectively 10 million, 20 million and 20 million, and then the total historical residual bandwidth value is 20 million +10 million +20 million which is 50 million. Therefore, the scheduling coefficient of the first serving node in the first target sub-period is: the scheduling coefficient of the second serving node in the first target sub-period is as follows: the scheduling coefficient of the third serving node in the first target sub-period is as follows: the 20 million/50 million is 0.4.
Step 403, based on the scheduling coefficient of the first service node in each target sub-period, distributing each request message to a plurality of service nodes in a manner that the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, step 403 has at least the following two realizations, which are described below:
in a first implementation manner, the request message processing system may include a plurality of first servers, the plurality of first servers may form N groups of first servers, each group of servers may include at least one server, and the N groups of servers may correspond to the N target sub-periods one to one. At this time, each group of servers may provide services to different terminals. Correspondingly, when receiving the request message, each group of servers may receive at least one request message sent by the corresponding terminal, respectively. In distributing the request message, the distribution process of the request message may be performed based on the request message received by each group of servers.
Each group of servers in the N groups of servers corresponds to one target sub-period, and the scheduling coefficient corresponds to one target sub-period, so that it can be determined that each group of servers corresponds to the scheduling coefficient in one target sub-period, and therefore, when a request message is distributed, the request message received by each group of servers can be distributed to a corresponding service node according to the scheduling coefficient corresponding to each target sub-period of the service node.
Optionally, the distribution process of the request message may include: and distributing the request messages received by each group of servers to a plurality of service nodes in a manner that the quantity of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period based on the scheduling coefficient of the first service node in the target sub-period corresponding to the group of servers.
Illustratively, assume that the target period includes 2 target sub-periods, X target sub-period and Y target sub-period, respectively, and the request message scheduling system receives the request message through a first group of servers and a second group of servers, and the first group of servers corresponds to the X target sub-period and the second group of servers corresponds to the Y target sub-period. When the request messages are distributed in a manner that the number of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period, the request messages received by the first group of servers may be distributed to the first service node according to the scheduling coefficient of the first service node corresponding to the X target sub-period, and the request messages received by the second group of servers may be distributed to the first service node according to the scheduling coefficient of the first service node corresponding to the Y target sub-period.
In addition, when the first server distributes the request message according to the scheduling coefficients of the N target subintervals, even if the partial scheduling coefficients reflect a deviation of the scheduling capability of the serving node relative to other serving nodes from the actual scheduling capability of the serving node, because the request message corresponding to the scheduling coefficient is only the request message received by a part of the group servers, after the request message is distributed according to the request message, the method only influences the request messages received by part of the servers, and can still buffer the concurrency pressure of the request messages received by other group servers (at least one group of servers except part of group servers in the N groups of servers).
In a second implementation manner, a plurality of request messages may be divided into N parts, and then each request message may be distributed to a plurality of service nodes in a manner that the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, each request message in the N request messages corresponds to one target sub-period, and the scheduling coefficient corresponds to one target sub-period, so that it can be determined that each request message corresponds to the scheduling coefficient in one target sub-period, and therefore, when a request message is distributed, each corresponding request message can be distributed to a service node according to the scheduling coefficient corresponding to each target sub-period by the service node.
By way of example, assume that the request message processing system includes 3 service nodes, a first service node, a second service node, and a third service node. The target time interval comprises a first target sub-time interval and a second target sub-time interval, the number of the request messages to be distributed is 200, the first server equally divides the request messages into 2 parts according to the number of the target sub-time intervals, and the number of each part of the request messages is 100. As shown in table 1, the scheduling coefficients of the first service node, the second service node and the third service node in the first target sub-period are 5/10, 2/10 and 3/10, respectively, and when the request messages are distributed in such a manner that the number of the request messages is proportional to the scheduling coefficient of the service node, the number of the request messages distributed by the first service node, the second service node and the third service node in the first target sub-period is 50, 20 and 30, respectively. The scheduling coefficients of the first service node, the second service node and the third service node in the second target sub-period are 4/10, 1/10 and 5/10, respectively, and when the request messages are distributed in such a manner that the number of the request messages is proportional to the scheduling coefficient of the service node, the number of the request messages distributed by the first service node, the second service node and the third service node in the second target sub-period is 40, 10 and 50, respectively.
TABLE 1
Figure BDA0001926952290000141
As can be seen from table 1, in each target subinterval, the first server may distribute the request message to the plurality of service nodes in such a manner that the scheduling coefficient is proportional to the number of request messages. For example, in the first target sub-period, the scheduling coefficient of the first service node is greater than that of the second service node, and the number of request messages distributed by the first service node is greater than that distributed by the second service node; similarly, in the second target sub-period, the scheduling coefficient of the third service node is greater than that of the first service node, and the number of request messages distributed by the third service node is also greater than that of the first service node. In this way, after the request message distribution process is completed, the bandwidths used by the three service nodes for transmitting the request message are closer to the remaining bandwidths of the corresponding service nodes, so that the message processing pressures borne by the three service nodes are more balanced.
Because the target time interval includes N target sub-time intervals, and each service node corresponds to one scheduling coefficient in each target sub-time interval, the first server may divide the plurality of request messages into the number of copies (i.e., N copies) equal to the number of the target sub-time intervals, so that the first server distributes the request messages corresponding to the target sub-time intervals to each service node according to the scheduling coefficient corresponding to each service node in the target sub-time intervals in which the request messages need to be distributed. Wherein each request message may include at least one request message.
Optionally, when N > 1, the first server may divide the plurality of request messages into N shares in an equal or unequal manner. And, when the first server does not equally divide the plurality of request messages into N, the division rule thereof may be determined according to actual needs. For example, the division may be performed according to the weights corresponding to the N target sub-periods. And, the processing score of each target sub-period can be determined by the request message processing condition of each target sub-period, and then the plurality of request messages are divided into N according to the way that the processing score corresponding to the target sub-period is in direct proportion to the number of the corresponding request messages.
When the first server equally divides the plurality of request messages into N parts, namely the number of the request messages in each part of the request messages is equal, namely each target subinterval can be distributed to the request messages which are 1/N times of the total number of the request messages to be scheduled. Because the scheduling coefficient corresponding to any service node in each target sub-period is used for reflecting the scheduling capability of the service node relative to other service nodes, in the first target sub-period, after the plurality of service nodes receive the request message, the plurality of service nodes can bear the processing pressure brought by the request message in a relatively balanced manner. When the request message has high concurrency, the multiple service nodes can bear the high concurrency pressure more uniformly, and performance degradation or breakdown caused by the fact that the high concurrency pressure shifts to partial service nodes can be avoided.
The scheduling coefficient is a ratio of the historical remaining bandwidth value to the total historical remaining bandwidth value, that is, the more the historical remaining bandwidth value of the first service node is, the larger the scheduling coefficient of the first service node in the corresponding target sub-period is. When the request messages are distributed in a manner that the number of the request messages is in direct proportion to the scheduling coefficient of the first service node, the first service node with the larger corresponding scheduling coefficient has more distributed request messages, so that the plurality of service nodes can bear the processing pressure brought by the request messages more uniformly. When the request message has high concurrency, the multiple service nodes can bear the high concurrency pressure more uniformly, and performance degradation or breakdown caused by the fact that the high concurrency pressure shifts to partial service nodes can be avoided.
In addition, when the first server distributes the request message according to the scheduling coefficients of the N target sub-periods, even if the scheduling capability of the service node relative to other service nodes reflected by part of the scheduling coefficients is deviated from the actual scheduling capability of the service node, because the request message corresponding to the scheduling coefficient is only 1/N of all the request messages to be distributed, after the request message is distributed according to the request message, only 1/N of all the request messages to be distributed are affected, and the distribution of other N-1 request messages can still play a buffering role on the request message concurrency pressure.
It should be noted that, in the period from the time when the scheduling coefficient of the service node is acquired to the time before the scheduling coefficient is acquired again, if the request message needs to be distributed for multiple times, the multiple-time distribution process can distribute the request message according to the acquired scheduling coefficient. For example, when the scheduling coefficient acquisition period includes a plurality of message sampling periods, after the scheduling coefficient is acquired according to the previous scheduling coefficient acquisition period located before the scheduling coefficient acquisition period in time series, the request message may be distributed according to the scheduling coefficient acquired in the previous scheduling coefficient acquisition period in the plurality of message sampling periods.
For example, as shown in fig. 8, the starting time of the period T4 obtains the scheduling coefficient, and the time for obtaining the scheduling coefficient again is the ending time of the period T4, when the request message is distributed multiple times within the period T4, for example, the request message needs to be distributed at the time T41, the time T42 and the time T43, at this time, the request message to be scheduled may be distributed to multiple service nodes at the time T41, the time T42 and the time T43 in such a manner that the scheduling coefficient obtained at the starting time is proportional to the number of request messages distributed to each service node.
Fig. 9 is a schematic view illustrating a traffic change of a service node when a request message is distributed according to a request message processing method provided in the related art. The abscissa of the flow rate variation diagram is time in hours; the ordinate is the flow rate in kilobytes (kb). As can be seen from fig. 9, when a high concurrency condition occurs in a request message, the traffic of a service node is increased according to the condition, and therefore, the scheduling efficiency of the request message processing method is low. For example, when the time is about 30 hours, the traffic consumed at the service node increases sharply, and the traffic exceeds 200000 kb. In addition, when the consumed bandwidth (e.g., 200000kb) of the service node exceeds the purchased bandwidth (e.g., 100000kb), an additional fee is required, resulting in a higher cost for processing the request message.
Fig. 10 is a schematic view illustrating a traffic change of a service node when a request message is distributed by the request message processing method according to the embodiment of the present invention, and the conditions of fig. 10 and fig. 9 are the same except that the implementation process of the request message processing method is different. The other conditions may include: the number of request messages sent to the serving node, the available bandwidth quota value of the serving node, etc. The abscissa of the flow rate variation diagram is time in hours; the ordinate is the flow rate in kb. As can be seen from fig. 10, the traffic consumed by the service node changes more stably with time, and even when the request message is highly concurrent, for example, when the time is about 30 hours, the traffic oscillates only in a small range about 50000kb, and the traffic consumed by the service node does not increase sharply. And the maximum value of the flow rate does not exceed 100000kb, which is much smaller than 200000kb in the related art. Therefore, the efficiency is higher when the request message processing method provided by the embodiment of the invention is used for scheduling the request message. In addition, because the situation of the sharp increase of the consumed flow on the service node does not occur, extra expenses do not need to be paid, and the cost for processing the request message is effectively reduced.
In summary, the request message processing method provided in the embodiments of the present invention obtains the historical remaining bandwidth value of each service node, determines the scheduling coefficient of the service node based on the historical remaining bandwidth value, and distributes the request message to a plurality of service nodes based on the scheduling coefficient of each service node, compared to the related art, since any scheduling coefficient is used to reflect the scheduling capabilities of any serving node relative to other serving nodes in the request message processing system, when the request message of the network live broadcast platform is highly concurrent, the first server can distribute the request message for the service nodes according to the scheduling capability of each service node, and the concurrent request message is distributed to the plurality of service nodes according to the scheduling coefficient, so that the plurality of service nodes jointly bear the scheduling pressure brought by the high-concurrency of the request message, and the scheduling efficiency of the request message is improved.
Fig. 11 is a schematic diagram of a request message processing apparatus according to an embodiment of the present invention. As shown in fig. 11, the request message processing apparatus 200 may include:
an obtaining unit 201, configured to obtain a historical remaining bandwidth value of each service node in a request message processing system, where the request message processing system includes a plurality of service nodes.
A determining unit 202, configured to determine a scheduling coefficient of each service node based on a historical remaining bandwidth value of each service node, where the scheduling coefficient of any service node is used to reflect a scheduling capability of any service node relative to other service nodes, and the other service nodes are service nodes except any service node in the multiple service nodes.
A sending unit 203, configured to distribute the received multiple request messages to multiple service nodes based on the scheduling coefficient of each service node.
In summary, in the request message processing apparatus according to the embodiment of the present invention, the obtaining unit obtains the historical remaining bandwidth value of each service node, the determining unit determines the scheduling coefficient of the service node based on the historical remaining bandwidth value, and the sending unit distributes the request message to a plurality of service nodes based on the scheduling coefficient of each service node, compared to the related art, since any scheduling coefficient is used to reflect the scheduling capabilities of any serving node relative to other serving nodes in the request message processing system, when the request message of the network live broadcast platform is highly concurrent, the first server can distribute the request message for the service nodes according to the scheduling capability of each service node, and the concurrent request message is distributed to the plurality of service nodes according to the scheduling coefficient, so that the plurality of service nodes jointly bear the scheduling pressure brought by the high-concurrency of the request message, and the scheduling efficiency of the request message is improved.
Optionally, the determining unit 202 is configured to determine a scheduling coefficient of the first service node in each target sub-period based on a historical remaining bandwidth value of the first service node in each target sub-period in the target period, where the first service node is any one of a plurality of service nodes, the target period includes N target sub-periods, and N is a positive integer.
Alternatively, as shown in fig. 12, the sending unit 203 may include:
a dividing subunit 2031 configured to divide the plurality of request messages into N shares.
A sending subunit 2032, configured to, for each request message, distribute each request message to multiple service nodes in a manner that, based on the scheduling coefficient of the first service node in each target sub-period, the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period.
Optionally, the scheduling coefficient of the first serving node in the first target sub-period is: the ratio of the historical remaining bandwidth value of the first service node in the first target sub-period to the total historical remaining bandwidth value, the total historical remaining bandwidth value is the sum of the historical remaining bandwidth values of the plurality of service nodes in the first target sub-period, and the first target sub-period is any one of the N target sub-periods.
Alternatively, as shown in fig. 13, the request message processing apparatus 200 may include: a receiving unit 204, configured to receive at least one request message through N groups of servers, where the N groups of servers are in one-to-one correspondence with the N target sub-periods;
correspondingly, the sending unit 203 is configured to, for a request message received by any group of servers, distribute each request message to the plurality of service nodes in a manner that the number of request messages distributed to the first service node is proportional to the scheduling coefficient of the first service node in the corresponding target sub-period, based on the scheduling coefficient of the first service node in the target sub-period corresponding to the any group of servers.
Alternatively, as shown in fig. 14, the obtaining unit 201 may include: the obtaining sub-unit 2011 is configured to obtain a historical remaining bandwidth value of the first service node in each target sub-period.
Optionally, an obtaining subunit 2011, configured to:
and acquiring a historical use bandwidth value of the first service node in a first target sub-period, wherein the first target sub-period is any one of the N target sub-periods.
And determining the difference value between the available bandwidth value of the first service node and the historical used bandwidth value as the historical residual bandwidth value of the first service node in the first target sub-period.
Optionally, with continuing to refer to fig. 14, the obtaining unit 201 may further include: a predicting sub-unit 2012, configured to predict a future bandwidth usage value of the first service node in the first target sub-period based on a historical bandwidth usage value of the first service node in a last specified period of the first target sub-period, where the last specified period is a period chronologically before the first target sub-period, and the first target sub-period is any one of the N target sub-periods.
Optionally, the obtaining subunit 2011 is further configured to:
and acquiring the historical use bandwidth value of the first service node in the first target sub-period.
And determining the difference between the available bandwidth value of the first service node and the total used bandwidth as the historical residual bandwidth value of the first service node in the first target sub-period, wherein the total used bandwidth is the sum of the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period.
In summary, in the request message processing apparatus according to the embodiment of the present invention, the obtaining unit obtains the historical remaining bandwidth value of each service node, the determining unit determines the scheduling coefficient of the service node based on the historical remaining bandwidth value, and the sending unit distributes the request message to a plurality of service nodes based on the scheduling coefficient of each service node, compared to the related art, since any scheduling coefficient is used to reflect the scheduling capabilities of any serving node relative to other serving nodes in the request message processing system, when the request message of the network live broadcast platform is highly concurrent, the first server can distribute the request message for the service nodes according to the scheduling capability of each service node, and the concurrent request message is distributed to the plurality of service nodes according to the scheduling coefficient, so that the plurality of service nodes jointly bear the scheduling pressure brought by the high-concurrency of the request message, and the scheduling efficiency of the request message is improved.
The invention provides a request message processing system, which can comprise: a plurality of service nodes and any one of the request message processing apparatuses provided by the embodiments of the present invention. Alternatively, the request message processing means may be deployed inside the first server.
Alternatively, the service node may be a content delivery network CDN node.
An embodiment of the invention provides a server, which comprises a processor and a memory. The memory is used for storing a computer program; and the processor is used for executing the program stored in the memory and realizing the request message processing method provided by the embodiment of the invention.
Fig. 15 is a schematic diagram illustrating a configuration of a server according to an example embodiment. The server 700 includes a Central Processing Unit (CPU)701, a system memory 704 including a Random Access Memory (RAM)702 and a Read Only Memory (ROM)703, and a system bus 705 connecting the system memory 704 and the central processing unit 701. The server 700 also includes a basic input/output system (I/O system) 706, which facilitates transfer of information between devices within the computer, and a mass storage device 707 for storing an operating system 717, application programs 714, and other program modules 715.
The basic input/output system 706 comprises a display 708 for displaying information and an input device 709, such as a mouse, keyboard, etc., for a user to input information. Wherein the display 708 and input device 709 are connected to the central processing unit 701 through an input output controller 710 coupled to the system bus 705. The basic input/output system 706 may also include an input/output controller 710 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input-output controller 710 may also provide output to a display screen, a printer, or other type of output device.
The mass storage device 707 is connected to the central processing unit 701 through a mass storage controller (not shown) connected to the system bus 705. The mass storage device 707 and its associated computer-readable media provide non-volatile storage for the server 700. That is, the mass storage device 707 may include a computer-readable medium (not shown), such as a hard disk or CD-ROM drive.
Without loss of generality, the computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that the computer storage media is not limited to the foregoing. The system memory 704 and mass storage device 707 described above may be collectively referred to as memory.
The server 700 may also operate as a remote computer connected to a network via a network, such as the internet, according to various embodiments of the invention. That is, the server 700 may be connected to the network 712 through a network interface unit 711 connected to the system bus 705, or may be connected to other types of networks or remote computer systems (not shown) using the network interface unit 711.
The memory further includes one or more programs, the one or more programs are stored in the memory, and the central processing unit 701 implements the request message processing method provided by the embodiment of the present invention by executing the one or more programs.
An embodiment of the present invention provides a storage medium, which may be a non-volatile computer-readable storage medium, where a computer program is stored in the storage medium, and when the computer program is executed by a processor, the method for processing a request message provided in the embodiment of the present invention is implemented.
Embodiments of the present invention provide a computer program product including instructions, which, when the computer program product runs on a computer, enable the computer to execute the request message processing method provided by the embodiments of the present invention.
The above description is only exemplary of the present application and should not be taken as limiting, as any modification, equivalent replacement, or improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (9)

1. A method for processing a request message, the method comprising:
acquiring a historical residual bandwidth value of each service node in a request message processing system, wherein the request message processing system comprises a plurality of service nodes, and the service nodes are CDN (content delivery network) nodes;
determining a scheduling coefficient of a first service node in each target sub-period based on a historical remaining bandwidth value of the first service node in each target sub-period in a target period, wherein the first service node is any service node in the plurality of service nodes, the target period comprises N target sub-periods, N is a positive integer, the scheduling coefficient of any service node is used for reflecting the scheduling capability of the any service node relative to other service nodes, and the other service nodes are service nodes except the any service node in the plurality of service nodes;
respectively receiving at least one request message through N groups of servers, wherein the N groups of servers correspond to the N target sub-periods one by one; for a request message received by any group of servers, based on a scheduling coefficient of the first service node in a target sub-period corresponding to the any group of servers, distributing each request message to the plurality of service nodes in a manner that the number of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period.
2. The method of claim 1, wherein the scheduling coefficient of the first serving node in the first target sub-period is: the ratio of the historical remaining bandwidth value of the first service node in the first target sub-period to the total historical remaining bandwidth value, where the total historical remaining bandwidth value is the sum of the historical remaining bandwidth values of the plurality of service nodes in the first target sub-period, and the first target sub-period is any one of the N target sub-periods.
3. The method of claim 1, wherein obtaining the historical remaining bandwidth value of each service node in the request message processing system comprises:
and acquiring the historical residual bandwidth value of the first service node in each target sub-period.
4. The method of claim 3, wherein the obtaining the historical remaining bandwidth value of the first service node in each target sub-period comprises:
acquiring a historical use bandwidth value of the first service node in a first target sub-period, wherein the first target sub-period is any one of the N target sub-periods;
determining a difference between the available bandwidth quota value of the first service node and the historical used bandwidth value as a historical remaining bandwidth value of the first service node within the first target sub-period.
5. The method of claim 3, wherein before the obtaining the historical remaining bandwidth values of the first serving node in each of the target sub-periods, the method further comprises:
predicting a future usage bandwidth value of the first service node within a first target sub-period based on a historical usage bandwidth value of the first service node within a last specified period of the first target sub-period, the last specified period being a period chronologically before the first target sub-period, the first target sub-period being any one of the N target sub-periods;
the obtaining of the historical remaining bandwidth value of the first service node in each target sub-period includes:
acquiring a historical use bandwidth value of the first service node in the first target sub-period;
determining a difference between an available bandwidth amount value of the first service node and a total amount of used bandwidth as a sum of the historical used bandwidth value and the future used bandwidth value of the first service node in the first target sub-period.
6. A request message processing apparatus, characterized in that the apparatus comprises:
the system comprises an obtaining unit, a processing unit and a processing unit, wherein the obtaining unit is used for obtaining the historical residual bandwidth value of each service node in a request message processing system, the request message processing system comprises a plurality of service nodes, and the service nodes are CDN (content delivery network) nodes;
a determining unit, configured to determine, based on a historical remaining bandwidth value of a first service node in each target sub-period in a target period, a scheduling coefficient of the first service node in the each target sub-period, where the first service node is any one of the multiple service nodes, the target period includes N target sub-periods, where N is a positive integer, the scheduling coefficient of any service node is used to reflect a scheduling capability of the any service node relative to other service nodes, and the other service nodes are service nodes other than the any service node in the multiple service nodes;
a sending unit, configured to receive at least one request message through N groups of servers, where the N groups of servers are in one-to-one correspondence with the N target sub-periods; for a request message received by any group of servers, based on a scheduling coefficient of the first service node in a target sub-period corresponding to the any group of servers, distributing each request message to the plurality of service nodes in a manner that the number of the request messages distributed to the first service node is in direct proportion to the scheduling coefficient of the first service node in the corresponding target sub-period.
7. A request message processing system, comprising: a plurality of service nodes and a request message processing apparatus as claimed in claim 6.
8. A server, comprising a processor and a memory;
wherein the content of the first and second substances,
the memory is used for storing a computer program;
the processor is configured to execute the program stored in the memory, and implement the request message processing method according to any one of claims 1 to 5.
9. A storage medium, characterized in that the storage medium has stored therein a computer program which, when executed by a processor, implements the request message processing method of any one of claims 1 to 5.
CN201811621453.0A 2018-12-28 2018-12-28 Request message processing method, device and system, server and storage medium Active CN109688421B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811621453.0A CN109688421B (en) 2018-12-28 2018-12-28 Request message processing method, device and system, server and storage medium
PCT/CN2019/120027 WO2020134753A1 (en) 2018-12-28 2019-11-21 Request message processing method, apparatus and system, and server and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811621453.0A CN109688421B (en) 2018-12-28 2018-12-28 Request message processing method, device and system, server and storage medium

Publications (2)

Publication Number Publication Date
CN109688421A CN109688421A (en) 2019-04-26
CN109688421B true CN109688421B (en) 2020-07-10

Family

ID=66190197

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811621453.0A Active CN109688421B (en) 2018-12-28 2018-12-28 Request message processing method, device and system, server and storage medium

Country Status (2)

Country Link
CN (1) CN109688421B (en)
WO (1) WO2020134753A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109688421B (en) * 2018-12-28 2020-07-10 广州华多网络科技有限公司 Request message processing method, device and system, server and storage medium
CN111464820B (en) * 2020-03-31 2022-05-10 北京字节跳动网络技术有限公司 Sampling method and device for pulling message record, electronic equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691604A (en) * 2004-04-30 2005-11-02 武汉烽火网络有限责任公司 Method and apparatus for dynamic bandwidth allocation in IP telecom network
CN106332141A (en) * 2016-09-13 2017-01-11 杭州华三通信技术有限公司 Flow load sharing method and flow load sharing device
CN108132839A (en) * 2016-11-30 2018-06-08 中国移动通信有限公司研究院 A kind of resource regulating method and device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8631411B1 (en) * 2009-07-21 2014-01-14 The Research Foundation For The State University Of New York Energy aware processing load distribution system and method
WO2013080419A1 (en) * 2011-12-02 2013-06-06 日本電気株式会社 Traffic management device, system, method, and non-transitory computer-readable medium containing program
CN102436401A (en) * 2011-12-16 2012-05-02 北京邮电大学 Load balancing system and method
CN102611735B (en) * 2011-12-21 2015-12-09 北京奇虎科技有限公司 A kind of load-balancing method of application service and system
CN103401947A (en) * 2013-08-20 2013-11-20 曙光信息产业(北京)有限公司 Method and device for allocating tasks to multiple servers
CN104320455B (en) * 2014-10-23 2018-05-01 京信通信系统(中国)有限公司 A kind of data distributing method, server and system
CN105072182A (en) * 2015-08-10 2015-11-18 北京佳讯飞鸿电气股份有限公司 Load balancing method, load balancer and user terminal
CN105847370A (en) * 2016-03-31 2016-08-10 乐视控股(北京)有限公司 Video file scheduling distribution or request method and system
CN107786620B (en) * 2016-08-31 2019-10-22 华为技术有限公司 A kind of method, terminal and server obtaining resource
CN108712302B (en) * 2018-04-19 2020-08-14 上海帝联网络科技有限公司 Method and device for calculating regional bandwidth and computer readable medium
CN109688421B (en) * 2018-12-28 2020-07-10 广州华多网络科技有限公司 Request message processing method, device and system, server and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691604A (en) * 2004-04-30 2005-11-02 武汉烽火网络有限责任公司 Method and apparatus for dynamic bandwidth allocation in IP telecom network
CN106332141A (en) * 2016-09-13 2017-01-11 杭州华三通信技术有限公司 Flow load sharing method and flow load sharing device
CN108132839A (en) * 2016-11-30 2018-06-08 中国移动通信有限公司研究院 A kind of resource regulating method and device

Also Published As

Publication number Publication date
WO2020134753A1 (en) 2020-07-02
CN109688421A (en) 2019-04-26

Similar Documents

Publication Publication Date Title
CN107391271B (en) Message queue system-based delayed task triggering method and device
US8078729B2 (en) Media streaming with online caching and peer-to-peer forwarding
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
Wang et al. Joint online transcoding and geo-distributed delivery for dynamic adaptive streaming
US9438669B2 (en) System and method for packetizing data stream in peer-to-peer (P2P) based streaming service
CN109688421B (en) Request message processing method, device and system, server and storage medium
CN101741884A (en) Distributed storage method and device
CN101473651A (en) Accommodation control for performance understand peer-to-peer video program request
Li et al. High performance on-demand video transcoding using cloud services
Ciullo et al. How much can large-scale video-on-demand benefit from users' cooperation?
CN107920108A (en) A kind of method for pushing of media resource, client and server
US20140157337A1 (en) Multi-Stage Batching of Content Distribution in a Media Distribution System
CN113641505B (en) Resource allocation control method and device for server cluster
Mokhtarian et al. Analysis of peer-assisted video-on-demand systems with scalable video streams
CN113824689B (en) Edge computing network, data transmission method, device, equipment and storage medium
CN113949741B (en) Scheduling method, scheduling device, electronic equipment and storage medium
CN115665054A (en) Method and module for bandwidth allocation and data transmission management system
CN113810461B (en) Bandwidth control method, device and equipment and readable storage medium
CN111193684A (en) Real-time delivery method and server of media stream
JP6378631B2 (en) Video distribution system and video distribution method
CN110691143B (en) File pushing method and device, electronic equipment and medium
CN113835905A (en) Message queue load balancing method and device, electronic equipment and medium
Braun et al. Mobile peer-to-peer assisted coded streaming
CN111064997B (en) Resource pre-distribution method and device
Hwang et al. Joint-family: Adaptive bitrate video-on-demand streaming over peer-to-peer networks with realistic abandonment patterns

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20190426

Assignee: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Contract record no.: X2021980000101

Denomination of invention: Request message processing method, device and system, server and storage medium

Granted publication date: 20200710

License type: Common License

Record date: 20210106