CN112543354A - Service-aware distributed video cluster efficient scaling method and system - Google Patents

Service-aware distributed video cluster efficient scaling method and system Download PDF

Info

Publication number
CN112543354A
CN112543354A CN202011368368.5A CN202011368368A CN112543354A CN 112543354 A CN112543354 A CN 112543354A CN 202011368368 A CN202011368368 A CN 202011368368A CN 112543354 A CN112543354 A CN 112543354A
Authority
CN
China
Prior art keywords
cluster
media server
streaming media
real
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.)
Granted
Application number
CN202011368368.5A
Other languages
Chinese (zh)
Other versions
CN112543354B (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.)
Southwest University of Science and Technology
Peng Cheng Laboratory
Original Assignee
Southwest University of Science and Technology
Peng Cheng Laboratory
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 Southwest University of Science and Technology, Peng Cheng Laboratory filed Critical Southwest University of Science and Technology
Priority to CN202011368368.5A priority Critical patent/CN112543354B/en
Publication of CN112543354A publication Critical patent/CN112543354A/en
Application granted granted Critical
Publication of CN112543354B publication Critical patent/CN112543354B/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/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/2405Monitoring of the internal components or processes of the server, e.g. server load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses a service-aware distributed video cluster efficient scaling method and a system, wherein the method comprises the following steps: generating a program input source stream pushing address according to the attribute of the program to be issued and the running state information of the stream media server in the distributed cluster system; acquiring a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type; monitoring the resource utilization rate of the streaming media server and judging whether capacity expansion conditions are met or not; and if the capacity expansion condition is met, creating a new streaming media server instance according to the dynamic scaling strategy, and scheduling the new streaming media server instance to the working node. The invention solves the problems that the distributed video cluster service is not sensed and the dynamic expansion and contraction can not be realized, realizes the sensing of the distributed video cluster service, and simultaneously supports various application services and the dynamic high-efficiency elastic expansion and contraction function of the cluster.

Description

Service-aware distributed video cluster efficient scaling method and system
Technical Field
The present application relates to the field of distributed video cluster technologies, and in particular, to a method and a system for efficient scaling of a service-aware distributed video cluster.
Background
With the development of the video industry and the increase of video application scenes, multimedia traffic shows an explosive growth trend, and multimedia content becomes a main component of current network traffic. In the era of video internet, on one hand, online video extremely consumes network bandwidth resources; on the other hand, users have higher and higher video service quality, and the transmission of multimedia content faces huge technical challenges. The traditional distributed video cluster has the problems of incapability of flexible dynamic elastic expansion, service imperceptibility and the like, and cannot meet the requirement of differentiated service scenes.
The inventor of the application finds that the distributed video cluster in the prior art has the following technical problems:
firstly, services are not perceived, service types cannot be distinguished, the same processing mode is adopted for all the services, bandwidth resources of a cluster system cannot be reasonably utilized, the cluster bandwidth utilization rate is low, requirements cannot be met when the cluster bandwidth utilization rate is used for dealing with certain services with high code rates, and a playing end cannot normally watch the services;
secondly, service distribution and scheduling are completed by a specific server in the cluster, the coupling degree is high, the problem of single-point failure exists, the distribution and scheduling servers are not highly available, and if the server is down, the distributed cluster cannot work normally;
and thirdly, dynamic elastic expansion and contraction of the distributed cluster are not supported, the distributed cluster cannot realize dynamic automatic expansion or contraction according to actual service requirements, and the requirement for rapid service increase cannot be met.
Therefore, it is crucial to provide a distributed video clustering method and system that supports multiple service applications and is dynamically, efficiently and elastically scalable.
Disclosure of Invention
The invention mainly aims to provide a service-aware distributed video cluster efficient scaling method and system, and aims to solve the problems that distributed video cluster services are not aware and dynamic scaling cannot be realized.
In order to achieve the above object, the present application provides a service-aware distributed video cluster efficient scaling method, including the following steps:
generating a program input source stream pushing address according to the attribute of the program to be issued and the running state information of the stream media server in the distributed cluster system; wherein, the attribute information comprises program information, input source protocol and service type;
acquiring a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type;
monitoring the resource utilization rate of the streaming media server and judging whether capacity expansion conditions are met or not;
and if the capacity expansion condition is met, creating a new streaming media server instance according to the dynamic scaling strategy, and scheduling the new streaming media server instance to the working node.
In an embodiment, the service-aware distributed video cluster efficient scaling method further includes:
responding to a program creating request, and configuring a program to be issued;
and storing the programs to be issued in a database cluster according to the priority.
In one embodiment, the service types include at least the following two types: on-demand service, live broadcast service.
In an embodiment, the obtaining a real-time video stream of a program to be distributed and pushing the real-time video stream to a streaming media server corresponding to the service type includes:
acquiring an operating streaming media server list according to the streaming media server cluster information;
configuring a real-time encoder to acquire a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to a program input source stream pushing address of the service type so as to update a program state in real time;
wherein each service type runs a corresponding streaming server instance, and each streaming server instance runs in a separate container.
In one embodiment, the streaming media server cluster comprises a source station cluster and an edge cluster; the pushing the real-time video stream to a streaming media server corresponding to the program input source stream pushing address of the service type to update the program state in real time includes:
pushing a real-time video stream of a program to be released to a streaming media server cluster closest to a stream pushing network, and storing the real-time video stream in a distributed file system;
if the stream pushing network is closest to the source station cluster, pushing the real-time video stream to the source station cluster;
and if the stream pushing network is closest to the edge cluster, pushing the real-time video stream to the edge cluster, and automatically acquiring the real-time video stream in the edge cluster through a source station cluster.
In an embodiment, the resources include at least: CPU, memory and network bandwidth; the monitoring the resource utilization rate of the streaming media server and judging whether the current streaming media server meets the capacity expansion condition includes:
respectively defining the capacity expansion threshold values of a CPU, a memory and a network bandwidth;
monitoring and acquiring the resource utilization rate of each streaming media server in real time;
and if the resource utilization rate of any one of the CPU, the memory and the network bandwidth is greater than the capacity expansion threshold, the capacity expansion condition is met.
In an embodiment, the service-aware distributed video cluster efficient scaling method further includes:
respectively defining capacity reduction threshold values of a CPU, a memory and a network bandwidth;
when the streaming media server does not receive the real-time video stream of the program to be released any more, acquiring the resource utilization rate of the corresponding streaming media server;
and if the utilization rates of all the resources in the CPU, the memory and the network bandwidth are simultaneously less than the capacity reduction threshold, the capacity reduction condition is met.
In an embodiment, the creating a new streaming server instance according to a dynamic scaling policy and scheduling the new streaming server instance to a work node includes:
calculating the expected copy number of the streaming media server according to a dynamic scaling strategy, wherein the expected copy number of the streaming media server is calculated according to the relation between the resource utilization rate and a capacity expansion threshold value;
creating a corresponding number of streaming media server instances according to the expected number of copies of the streaming media server;
and adjusting the streaming media server instance to a proper working node according to the running state of the current streaming media server cluster and the streaming media server instance.
The embodiment of the application also provides a system for efficiently stretching the service-aware distributed video cluster, which comprises a control unit, a main unit and a working unit;
the control unit includes:
the controller is used for receiving program information to be issued and generating an input source stream pushing address according to the program information and information of the current streaming media server cluster;
the monitor is connected with the controller and is used for monitoring the running state and the resource utilization rate of each streaming media server in real time;
the master unit includes:
the telescopic controller is connected with the monitor and used for acquiring the resource utilization rate to calculate the number of telescopic copies; the copy controller and the expansion controller are used for creating corresponding expansion copy numbers for dynamic expansion;
the scheduler is used for scheduling the created copy number to the proper nodes in the current distributed cluster for working;
the communication module is used for acquiring cluster information of the streaming media server in the current distributed cluster system;
the work unit includes: and the streaming media server cluster is connected with the communication module and is used for receiving and distributing the video stream.
In one embodiment, the system further comprises:
the distributed file system cluster is used for storing all video stream data in the system;
and the database cluster is used for storing the program information to be issued.
The technical scheme of the service-aware distributed video cluster efficient scaling method and system provided in the embodiment of the application at least has the following technical effects:
1. the technical scheme that the program input source stream pushing address is generated to connect the real-time encoder and the stream media server according to the program information to be issued, the input source protocol, the service type and the running state information of the stream media server in the distributed cluster system is adopted, so that the problem that the service in the prior art is not perceived is solved, the input source stream pushing address is established, and the effect of updating the program state is realized.
2. The technical scheme is that a real-time encoder is configured to obtain real-time video streams of programs to be released, each service type is operated on one streaming media server correspondingly, different streaming media server clusters are constructed according to different service conditions, and the real-time video streams of different service types are forwarded to the corresponding streaming media server clusters, so that the problem of service imperceptibility in the prior art is solved, and the effect that different services use different streaming media server clusters and a set of streaming media server system to integrate multiple services is achieved.
3. The technical scheme that the CPU, the memory and the network bandwidth resources of the streaming media server instance are calculated, the number of the streaming media server instances to be created is calculated according to the set dynamic expansion strategy, the copy controller is scheduled to create the corresponding number of the streaming media server instances, and the streaming media server instances to be created are scheduled to the most appropriate nodes in the cluster to create and operate according to the current state of the distributed cluster is adopted, so that the problem that the dynamic elastic expansion of the distributed cluster is not supported in the prior art is solved, the dynamic expansion efficiency is improved, and the system resources are saved when the user quantity is small.
Drawings
Fig. 1 is a schematic structural diagram of a service-aware distributed video cluster efficient scalable system according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a first embodiment of a service-aware distributed video cluster efficient scaling method according to the present application;
fig. 3 is a schematic flowchart of a second embodiment of a service-aware distributed video cluster efficient scaling method according to the present application;
fig. 4 is a schematic specific flowchart of step S240 of the service-aware distributed video cluster efficient scaling method according to the second embodiment of the present application;
fig. 5 is a schematic specific flowchart of step S242 of the service-aware distributed video cluster efficient scaling method according to the second embodiment of the present application;
fig. 6 is a schematic specific flowchart of step S250 of the service-aware distributed video cluster efficient scaling method according to the second embodiment of the present application;
fig. 7 is a schematic specific flowchart of step S260 in the second embodiment of the service-aware distributed video cluster efficient scaling method according to the present application;
the implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
In order to solve the problems that the distributed video cluster service is not perceived and dynamic expansion cannot be realized, a program input source stream pushing address is generated according to the attribute of a program to be issued and the running state information of a stream media server in a distributed cluster system; acquiring a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type; monitoring the resource utilization rate of the streaming media server and judging whether capacity expansion conditions are met or not; if the capacity expansion condition is met, a new streaming media server instance is created according to a dynamic expansion strategy, and the new streaming media server instance is dispatched to a working node, so that distributed video cluster service perception is realized, and multiple application services and a cluster dynamic high-efficiency elastic expansion function are supported.
For a better understanding of the above technical solutions, exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present application are shown in the drawings, it should be understood that the present application may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
In order to better understand the technical solution, the technical solution will be described in detail with reference to the drawings and the specific embodiments.
As shown in fig. 2, fig. 2 is a schematic flowchart of a first embodiment of a service-aware distributed video cluster efficient scaling method of the present application, including the following steps:
step S110, generating a program input source stream pushing address according to the attribute of the program to be issued and the running state information of the stream media server in the distributed cluster system; wherein the attribute information includes program information, input source protocol and service type.
In this embodiment, the controller acquires an input source protocol and a service type in program information created by a user from a database cluster, acquires cluster information of a streaming media server in a current distributed cluster system through a communication module, acquires a list of the streaming media server running in the current system, and generates an input source stream pushing address for programs of different service types according to the service type and the input source protocol of the program created by the user.
Step S120, acquiring a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type.
In this embodiment, a real-time encoder is configured to obtain a real-time video stream of a program to be distributed, and the real-time video stream is pushed to a corresponding streaming media server in real time according to input source stream pushing addresses of programs of different service types; for example, a real-time video stream of a live broadcast service to be released is acquired, and the real-time video stream is pushed to a live broadcast streaming media server corresponding to the live broadcast service; or acquiring a real-time video stream of the on-demand service to be released, and pushing the real-time video stream to an on-demand streaming media server corresponding to the on-demand service; the specific process is as described in steps S241 to S243, which is not described herein again.
Step S130, monitoring the resource utilization rate of the streaming media server, and determining whether the capacity expansion condition is satisfied.
In this embodiment, the resources at least include: the method comprises the steps that CPU, memory and network bandwidth are monitored, the CPU, the memory and the network bandwidth utilization rate of a streaming media server of all services are monitored in real time, the information is reported through a communication module, a capacity expansion threshold value or a capacity reduction threshold value of the streaming media server is defined, whether the capacity expansion condition or the capacity reduction condition is met or not is judged by judging the relation between the resource utilization rate of the current streaming media server and the capacity expansion threshold value or the capacity reduction threshold value, and the CPU, the memory and the network bandwidth utilization rate of all streaming media server containers are sent to a telescopic controller to carry out telescopic control; the specific determination process is as described in step S251 to step S253, and is not described herein again.
Step S140, if the capacity expansion condition is satisfied, a new streaming media server instance is created according to the dynamic scaling strategy, and the new streaming media server instance is dispatched to the working node.
In this embodiment, if the capacity expansion condition is satisfied, the expected number of copies of the streaming media server is calculated according to the relationship between the resource utilization rate and the preset threshold of the resource, and meanwhile, a corresponding number of streaming media server instances are created, and the new streaming media server instance is scheduled to the working node, where the specific process is as described in step S261 to step S263, and is not described herein again.
The method comprises the steps that a program input source stream pushing address is generated to connect a real-time encoder and a stream media server according to program information to be issued, an input source protocol, a service type and running state information of the stream media server in the distributed cluster system; acquiring real-time video streams of programs to be issued by adopting a configuration real-time encoder, wherein each service type is operated on a streaming media server correspondingly, different streaming media server clusters are constructed according to different service conditions, and the real-time video streams of different service types are forwarded to the corresponding streaming media server clusters; the technical scheme that the utilization rate of CPU, memory and network bandwidth resources of the streaming media server instance is calculated, the number of the streaming media server instances to be created is calculated according to a set dynamic scaling strategy, the corresponding number of the streaming media server instances are created by a scheduling copy controller, and the streaming media server instances to be created are scheduled to the most appropriate nodes in the cluster to create and run according to the state of the current distributed cluster is adopted, so that the problems that the service in the prior art is not sensed and the dynamic scaling control cannot be realized are solved, the service sensing is realized, the dynamic scaling efficiency is improved through the dynamic scaling control, and the system resources are saved when the user quantity is small.
As shown in fig. 3, fig. 3 is a schematic flowchart of a second embodiment of a service-aware distributed video cluster efficient scaling method according to the present application, and includes the following steps:
step S210, responding to the program creating request, configuring the program to be released.
In this embodiment, the responding to the request for creating a program refers to a user submitting a request for creating a program, where the program includes a live broadcast service or an on-demand service, and the user may create a service type to be released by logging in a device with a visual interface, and configure different attribute information for different programs; for example, a user can create a live broadcast service or an on-demand service on a web service website page by logging in the web service website, and configure different attribute information for the live broadcast service or the on-demand service; or the user can also configure different attribute information on the application program by logging in the application program, and the user can also log in to create the attribute information by a mobile phone, a computer or other intelligent equipment.
And step S220, storing the program to be issued in a database cluster according to the priority.
In this embodiment, the database cluster is a virtual single database logical image formed by at least two or more database servers, and provides transparent data services to a user end like a single database system; in this embodiment, the attribute information of the different programs configured in step S210 is stored in the database cluster, and the attribute information is stored in the database cluster in the form of a priority message queue.
Step S230, generating a program input source stream pushing address according to the attribute information of the program to be issued and the running state information of the stream media server in the distributed cluster system; wherein, the attribute information comprises program information, input source protocol and service type;
in this embodiment, the attribute information of the program to be distributed includes an input source protocol, a service type, a program name, and a program description; the input source protocol comprises RTMP, RTSP and HTTP protocols; the streaming media server mainly has the functions of collecting, caching, scheduling, transmitting and playing audio, video and media forms of media files. In this embodiment, the controller acquires an input source protocol and a program type in attribute information of a program created by a user from a database cluster, acquires cluster information of a streaming media server in a current distributed cluster system through a communication module, acquires a list of the streaming media server running in the current system, generates a stream pushing address of the input source for the program according to a service type and the input source protocol in attribute information of the program to be released created by the user, and realizes real-time pushing of video data to a corresponding streaming media server through the stream pushing address of the input source, thereby realizing real-time updating of the video data.
Step S240, acquiring a real-time video stream of the program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type.
As shown in fig. 4, fig. 4 is a specific flowchart of step S240 of the service-aware distributed video cluster efficient scaling method according to the second embodiment of the present application, and includes the following steps:
step S241, acquiring an operating streaming media server list according to the streaming media server cluster information.
In this embodiment, the streaming media server cluster at least includes streaming media servers that process two different service types, and obtains an operating streaming media server list according to the streaming media server cluster information.
Step S242, configuring a real-time encoder to obtain a real-time video stream of the program to be distributed, and pushing the real-time video stream to a streaming media server corresponding to the program input source stream pushing address of the service type to update the program state in real time.
In the present embodiment, the real-time encoder is configured to push the video stream to the stream pushing address of the input source generated in step S230; the stream pushing address of the input source is generated by the controller, so that the video stream pushed by the real-time encoder can be automatically forwarded to a streaming media server for publishing the service type corresponding to the program, and the controller monitors the input source and updates the program state in real time; for example, according to the input source stream pushing address of the live broadcast service, the live broadcast video pushed by the real-time encoder is automatically forwarded to the stream media server corresponding to the live broadcast service, and the controller detects the pushed live broadcast service information and updates the program state.
As shown in fig. 5, fig. 5 is a specific flowchart illustrating step S242 of a service-aware distributed video cluster efficient scaling method according to a second embodiment of the present application, and includes the following steps:
step S2421, pushing the real-time video stream of the program to be released to a streaming media server cluster closest to a stream pushing network, and storing the real-time video stream in a distributed file system.
In this embodiment, the distributed file system stores all video files, including files uploaded by a user, live broadcast service recording files, and on-demand service slicing files, the user may upload video files as source files of published programs through a visual interface, the uploaded video files are stored in the distributed file system of the system, the user may select to record live broadcast services for subsequent playback during live broadcast services, and for programs to be recorded, the live broadcast streaming media server stores these files in the distributed file system.
Step S2422, if the stream pushing network is closest to the source station cluster, pushing the real-time video stream to the source station cluster.
In this embodiment, the streaming media server cluster is responsible for receiving and distributing real-time video streams, and a source station cluster and an edge cluster are constructed for a live broadcast service. When a management user creates a live broadcast service and pushes a real-time video stream to a distributed video cluster, the video stream is pushed to a streaming media server closest to a stream pushing network, and if the stream pushing network is closest to a source station cluster, the real-time video stream is directly pushed to the source station cluster.
Step S2423, if the stream pushing network is closest to the edge cluster, pushing the real-time video stream to the edge cluster, and automatically acquiring the real-time video stream in the edge cluster through the source station cluster.
In this embodiment, if the stream pushing network is closest to a certain edge cluster, the real-time video stream is pushed to the edge cluster closest to the edge cluster, the source station cluster will automatically obtain the video stream from the edge cluster for distribution, and the user may also pull the stream from the edge cluster for distribution through the CDN; for example: when a user watches the published live broadcast service through a player or a webpage, after the user sends a playing request, an edge server closest to the user network acquires the program from a source station cluster and sends the program to a common user for watching; after the user creates the on-demand service, the on-demand service can be watched through the player or the webpage, and the on-demand file is acquired from the distributed file system through the on-demand cluster server closest to the plug flow network and is sent to the user for watching.
In this embodiment, when a user needs to record a live broadcast service, the recording is completed by the source station cluster server, and the edge cluster server is only responsible for stream distribution; the edge cluster and the source station cluster can automatically and dynamically stretch and retract and are independent.
The technical scheme includes that a real-time encoder is configured to obtain a real-time video stream of a program to be released, if the stream pushing network is closest to a source station cluster, the real-time video stream is pushed to the source station cluster, if the stream pushing network is closest to an edge cluster, the real-time video stream is pushed to the edge cluster, and the real-time video stream in the edge cluster is automatically obtained through the source station cluster. Therefore, the problem of system instability in the real-time data stream pushing process is effectively solved, the real-time video stream of the program to be issued is pushed to the streaming media server cluster closest to the stream pushing network, and the high stability of the system is improved.
Step S243, where each service type runs a corresponding streaming server instance, and each streaming server instance runs in a separate container.
In this embodiment, after a distributed video cluster is normally started, for different service types, a streaming media server and a scaling controller are operated in the cluster, and for each service type, a corresponding streaming media server instance is operated; for example, the streaming media servers corresponding to the on-demand service and the live broadcast service are independent from each other, each streaming media server instance runs in a separate container, and the streaming media server containers of all the services are managed by using the same scaling controller. The scaling controller specifies the policies and conditions for scaling at the time of creation.
The method adopts the technical scheme that a running streaming media server list is obtained according to the streaming media server cluster information, a real-time encoder is configured to obtain a real-time video stream of a program to be released, the real-time video stream is pushed to a streaming media server corresponding to the service type according to the stream pushing address of an input source, each service type runs a corresponding streaming media server instance, and each streaming media server instance runs in an independent container. Therefore, the problem that the service in the prior art is not perceived is effectively solved, and the effects that different services use different streaming media server clusters and a set of streaming media server system integrates multiple services are achieved.
Step S250, monitoring the resource utilization rate of the streaming media server, and judging whether capacity expansion conditions are met;
as shown in fig. 6, fig. 6 is a specific flowchart of step S250 of the second embodiment of the service-aware distributed video cluster efficient scaling method of the present application, which includes the following steps:
step S251, defining the capacity expansion thresholds of the CPU, the memory, and the network bandwidth, respectively.
In this embodiment, the expansion threshold refers to that the CPU, the memory, and the network bandwidth refer to that the streaming media server satisfies the condition reference for expansion, and the expansion threshold of the CPU, the memory, and the network bandwidth is defined in the expansion controller.
Step S252, the resource utilization rate of each streaming media server is monitored and obtained in real time.
In this embodiment, the monitoring module monitors the CPU, the memory, and the network bandwidth utilization rate of each streaming media server in real time, and reports these information to the expansion controller to determine whether the expansion condition is met.
In step S253, if the resource utilization rate of any one of the CPU, the memory, and the network bandwidth is greater than the capacity expansion threshold, the capacity expansion condition is satisfied.
In this embodiment, for example, the resource utilization rate of each streaming media server is monitored and obtained in real time, and if it is detected that the resource utilization rate of any one of the CPU, the memory, and the network bandwidth in the streaming media server is greater than the capacity expansion threshold, capacity expansion is performed; if detecting that the utilization rates of any two resources in the streaming media server are larger than the set capacity expansion threshold, carrying out capacity expansion; and if detecting that the utilization rate of all resources in the streaming media server is greater than the set capacity expansion threshold, performing capacity expansion.
In other embodiments, capacity reduction thresholds of a CPU, a memory and a network bandwidth are respectively defined, when a streaming media server does not receive a real-time video stream of a program to be released any more, a resource utilization rate of the corresponding streaming media server is obtained, and if all resource utilization rates in the CPU, the memory and the network bandwidth are simultaneously smaller than the capacity reduction threshold, a capacity reduction condition is met; for example: when the management user stops pushing the input video stream, the corresponding streaming media server does not receive the program video stream any more, the resource utilization rate of each streaming media server is monitored and obtained in real time, and when all the resource utilization rates in the CPU, the memory and the network bandwidth are smaller than the capacity reduction threshold value at the same time, capacity reduction is carried out.
Because the capacity expansion threshold and the capacity reduction threshold of the CPU, the memory and the network bandwidth are respectively defined, the resource utilization rate of each streaming media server is monitored and obtained in real time, and if the resource utilization rate of any one of the CPU, the memory and the network bandwidth is greater than the capacity expansion threshold, the capacity expansion condition is met, and the capacity expansion is carried out; if the utilization rates of all resources in the CPU, the memory and the network bandwidth are simultaneously less than the capacity reduction threshold, the capacity reduction condition is met, and the capacity reduction is carried out. Therefore, the problem that dynamic elastic expansion of the distributed cluster is not supported is effectively solved, dynamic automatic capacity expansion or capacity contraction is realized according to actual service requirements, and the requirement for rapid service increase is met.
Step S260, if the capacity expansion condition is satisfied, creating a new streaming media server instance according to the dynamic scaling strategy, and scheduling the new streaming media server instance to the working node.
As shown in fig. 7, fig. 7 is a specific flowchart of step S260 of a second embodiment of the service-aware distributed video cluster efficient scaling method of the present application, including the following steps:
step S261, calculating an expected number of copies of the streaming media server according to the dynamic scaling policy, wherein the expected number of copies of the streaming media server is calculated according to a relationship between the resource utilization rate and the capacity expansion threshold.
In this embodiment, the dynamic scaling policy is used to calculate an expected number of copies of the streaming media server, where there is at least one expected number of copies; under the condition of capacity expansion, the dynamic scaling strategy is as follows: if the calculated expected copy value has decimal place and the decimal point posterior value is greater than 0.1, then one bit is further carried out, for example, if the calculated expected copy number is 4.2, then the expected copy number is 5; if the calculated expected number of copies is less than 1, the expected number of copies is 1; for example, setting a CPU capacity expansion threshold of a streaming media server in a scaling controller to be 50%, setting a CPU usage rate of a certain streaming media server instance in a current system to be 60%, and calculating an expected copy number of the streaming media server to be 0.6/0.5-1.2 according to the dynamic scaling policy;
in this embodiment, the number of the expected copies of the corresponding number of the scaled versions may also be calculated according to a dynamic scaling strategy, where the dynamic scaling strategy refers to: the expected copy number is the current utilization rate/capacity reduction threshold of the resource, and the calculation process is the same as the capacity expansion expected copy number, which will not be described herein again.
Step S262, creating a corresponding number of streaming server instances according to the expected number of copies of the streaming server.
In this embodiment, according to the number of expansion expected copies of the streaming media server, where the number of expansion expected copies refers to the number of streaming media server instances that need to be expanded, the scheduling copy controller creates the streaming media server instances that need to be expanded.
Step S263, adjusting the streaming media server instance to a suitable working node according to the running state of the current streaming media server cluster and the streaming media server instance.
In this embodiment, a copy controller stores templates of streaming media server instances of each service type, and the same copy controller is responsible for creating and deleting streaming media server instances of all types; the method comprises the steps that a copy controller creates copy information of streaming media servers in a corresponding quantity according to templates of the corresponding streaming media servers, a scheduler monitors the instance information of the streaming media servers created by the copy controller, and the scheduler adjusts the instances of the streaming media servers to appropriate working nodes according to various scheduling strategies set in the scheduler and the running state of a current streaming media server cluster and the instances of the streaming media servers.
The technical scheme that the CPU, the memory and the network bandwidth resources of the streaming media server instance are calculated, the number of the streaming media server instances to be created is calculated according to the set dynamic expansion strategy, the copy controller is scheduled to create the corresponding number of the streaming media server instances, and the streaming media server instances to be created are scheduled to the most appropriate nodes in the cluster to create and operate according to the current state of the distributed cluster is adopted, so that the problem that the dynamic elastic expansion of the distributed cluster is not supported in the prior art is solved, the dynamic expansion efficiency is improved, and the system resources are saved when the user quantity is small.
Based on the same inventive concept, as shown in fig. 1, fig. 1 is a schematic structural diagram of a service-aware distributed video cluster efficient scalable system according to an embodiment of the present application, where the system includes a control unit 10, a main unit 30, and a work unit 40.
In the present embodiment, the control unit 10 includes: the controller 13 is configured to receive program information to be released created by the Web server 11, connect with the communication module 33 in the main unit 30, acquire information of a streaming media server cluster in the current distributed cluster system, and generate an input source stream pushing address according to the program information and the information of the current streaming media server cluster, so that the real-time encoder 50 can push a video stream to a corresponding streaming media server according to the input source stream pushing address; and a monitor 12 connected to the controller 13 for monitoring the operation status and resource utilization of each streaming media server in real time.
In the present embodiment, the main unit 30 includes: a scaling controller 31, connected to the monitor 12, for obtaining the CPU, the memory, and the network bandwidth of the streaming media server for monitoring all the services in real time by the monitor 12 through the communication module 33, and obtaining the resource utilization rate to calculate the number of scaling expected copies; the copy controller 32 and the expansion controller 31 report the information to the expansion controller 31 through the communication module 33, and inform the copy controller 32 to create a corresponding number of expansion copies for dynamic expansion; the scheduler 34 is used for scheduling the created copy number to a proper node in the current distributed cluster for work, and when the capacity expansion condition is met, the scheduler 34 is responsible for scheduling the container copies created by the scaling controller 31 and the copy controller 32 to a most proper node in the current distributed cluster for operation; the communication module 33 may also be configured to obtain cluster information of the streaming media server in the current distributed cluster system.
In the present embodiment, the working unit 40 includes: and the streaming media server cluster is connected with the communication module 33 and used for receiving and distributing the video stream, wherein the streaming media server cluster at least comprises a live edge cluster 41 and an on-demand cluster 42.
In this embodiment, the system further includes: the distributed file system cluster is used for storing all video stream data in a system and mainly comprises files uploaded by a user, live program recording files and on-demand program slicing files, the user can upload the video files through the Web server 11 to serve as source files for issuing programs, the uploaded video files are stored in the distributed file system of the system, the user can select to record live programs for subsequent playback when the user live the programs, and for the programs needing to be recorded, the live streaming media server can store the files in the distributed file system; the database cluster 20 is configured to store information of the program to be released, which is created by the Web server 11, including user information, program information submitted by a user, running status and information of the program to be released in the system, status and information of each functional module of the system itself, and the like.
The method provides a video cluster college expansion control system with service perception, the system receives program information to be issued by a controller, the information of the streaming media server cluster in the current distributed cluster system is obtained through the communication module, generating an input source stream pushing address according to the program information and the information of the current streaming media server cluster, sending the real-time video stream to the streaming media servers of different services corresponding to the input source stream pushing address by using a real-time encoder, meanwhile, the running state and the resource utilization rate of each streaming media server are monitored in real time by a monitor, the resource utilization rate is obtained by a telescopic controller to calculate the number of telescopic copies, and according to the technical scheme that the copy controller creates the corresponding number of telescopic copies, and the scheduler is informed to schedule the created number of copies to the proper nodes in the current distributed cluster for working. Therefore, the problems that the service is not sensed and the automatic expansion and contraction cannot be realized are effectively solved, and the operation environment is provided for the control method for the efficient expansion and contraction of the service-sensed video cluster.
Those skilled in the art will appreciate that the schematic structural diagram of the system for service-aware distributed video clustering efficient scaling shown in fig. 1 does not constitute a limitation to the system, and the system for service-aware distributed video clustering efficient scaling may include more or fewer components than those shown, or combine certain components, or arrange different components.
Since the service-aware distributed video cluster efficient scalable system provided in the embodiment of the present application is a service-aware distributed video cluster efficient scalable system used in implementing the method of the embodiment of the present application, based on the method introduced in the embodiment of the present application, those skilled in the art can understand the specific structure and deformation of the service-aware distributed video cluster efficient scalable system, and thus, details are not described here. All the service-aware distributed video cluster high-efficiency telescopic systems adopted by the method of the embodiment of the present application belong to the scope to be protected by the present application.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It should be noted that in the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The usage of the words first, second, third, etc. does not indicate any ordering. These words may be interpreted as names.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A service-aware distributed video cluster efficient scaling method is characterized in that,
generating a program input source stream pushing address according to attribute information of a program to be issued and running state information of a stream media server in the distributed cluster system; wherein, the attribute information comprises program information, input source protocol and service type;
acquiring a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to the service type;
monitoring the resource utilization rate of the streaming media server and judging whether capacity expansion conditions are met or not;
and if the capacity expansion condition is met, creating a new streaming media server instance according to the dynamic scaling strategy, and scheduling the new streaming media server instance to the working node.
2. The method for service-aware distributed video cluster efficient scaling of claim 1, further comprising:
responding to a program creating request, and configuring a program to be issued;
and storing the programs to be issued in a database cluster according to the priority.
3. The method for service-aware distributed video cluster scaling in high efficiency according to claim 2, wherein the service types include at least two of: on-demand service, live broadcast service.
4. The service-aware distributed video cluster efficient scaling method according to claim 3, wherein the obtaining a real-time video stream of a program to be distributed and pushing the real-time video stream to a streaming media server corresponding to the service type comprises:
acquiring an operating streaming media server list according to the streaming media server cluster information;
configuring a real-time encoder to acquire a real-time video stream of a program to be released, and pushing the real-time video stream to a streaming media server corresponding to a program input source stream pushing address of the service type so as to update a program state in real time;
wherein each service type runs a corresponding streaming server instance, and each streaming server instance runs in a separate container.
5. The method for service-aware distributed video cluster efficient scalability according to claim 4, wherein said streaming media server cluster comprises a source station cluster and an edge cluster; the pushing the real-time video stream to a streaming media server corresponding to the program input source stream pushing address of the service type to update the program state in real time includes:
pushing a real-time video stream of a program to be released to a streaming media server cluster closest to a stream pushing network, and storing the real-time video stream in a distributed file system;
if the stream pushing network is closest to the source station cluster, pushing the real-time video stream to the source station cluster;
and if the stream pushing network is closest to the edge cluster, pushing the real-time video stream to the edge cluster, and automatically acquiring the real-time video stream in the edge cluster through a source station cluster.
6. The method for traffic-aware distributed video cluster efficient scaling according to claim 5, wherein said resources comprise at least: CPU, memory and network bandwidth; the monitoring the resource utilization rate of the streaming media server and judging whether capacity expansion conditions are met includes:
respectively defining the capacity expansion threshold values of a CPU, a memory and a network bandwidth;
monitoring and acquiring the resource utilization rate of each streaming media server in real time;
and if the resource utilization rate of any one of the CPU, the memory and the network bandwidth is greater than the capacity expansion threshold, the capacity expansion condition is met.
7. The service-aware distributed video cluster scaling method of claim 5, further comprising:
respectively defining capacity reduction threshold values of a CPU, a memory and a network bandwidth;
when the streaming media server does not receive the real-time video stream of the program to be released any more, acquiring the resource utilization rate of the corresponding streaming media server;
and if the utilization rates of all the resources in the CPU, the memory and the network bandwidth are simultaneously less than the capacity reduction threshold, the capacity reduction condition is met.
8. The method of service-aware distributed video cluster efficient scaling of claim 6, wherein said creating a new streaming server instance according to a dynamic scaling policy, and scheduling said new streaming server instance to a worker node, comprises:
calculating the expected copy number of the streaming media server according to a dynamic scaling strategy, wherein the expected copy number of the streaming media server is calculated according to the relation between the resource utilization rate and a capacity expansion threshold value;
creating a corresponding number of streaming media server instances according to the expected number of copies of the streaming media server;
and adjusting the streaming media server instance to a proper working node according to the running state of the current streaming media server cluster and the streaming media server instance.
9. A system for efficient scaling of a service-aware distributed video cluster is characterized by comprising a control unit, a main unit and a working unit;
the control unit includes:
the controller is used for receiving program information to be issued and generating an input source stream pushing address according to the program information and information of the current streaming media server cluster;
the monitor is connected with the controller and is used for monitoring the running state and the resource utilization rate of each streaming media server in real time;
the master unit includes:
the telescopic controller is connected with the monitor and used for acquiring the resource utilization rate to calculate the number of telescopic copies; the copy controller and the expansion controller are used for creating corresponding expansion copy numbers for dynamic expansion;
the scheduler is used for scheduling the created copy number to the proper nodes in the current distributed cluster for working;
the communication module is used for acquiring cluster information of the streaming media server in the current distributed cluster system;
the work unit includes: and the streaming media server cluster is connected with the communication module and is used for receiving and distributing the real-time video stream of the program to be issued.
10. The system for service-aware distributed video cluster efficient scaling of claim 9, wherein the system further comprises:
the distributed file system cluster is used for storing real-time video stream data of all programs to be issued in the system;
and the database cluster is used for storing the program information to be issued.
CN202011368368.5A 2020-11-27 2020-11-27 Service-aware distributed video cluster efficient telescoping method and system Active CN112543354B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011368368.5A CN112543354B (en) 2020-11-27 2020-11-27 Service-aware distributed video cluster efficient telescoping method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011368368.5A CN112543354B (en) 2020-11-27 2020-11-27 Service-aware distributed video cluster efficient telescoping method and system

Publications (2)

Publication Number Publication Date
CN112543354A true CN112543354A (en) 2021-03-23
CN112543354B CN112543354B (en) 2023-05-09

Family

ID=75016415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011368368.5A Active CN112543354B (en) 2020-11-27 2020-11-27 Service-aware distributed video cluster efficient telescoping method and system

Country Status (1)

Country Link
CN (1) CN112543354B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630438A (en) * 2021-06-25 2021-11-09 微梦创科网络科技(中国)有限公司 Stream processing task scheduling method and distributed stream processing system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103561285A (en) * 2013-10-11 2014-02-05 深圳市同洲电子股份有限公司 Program broadcasting method and network plug-flow server
CN108668178A (en) * 2017-03-31 2018-10-16 华为技术有限公司 A kind of method of realizing group broadcasting and related network device
CN109873718A (en) * 2019-01-23 2019-06-11 平安科技(深圳)有限公司 A kind of container self-adapting stretching method, server and storage medium
CN110233984A (en) * 2018-03-06 2019-09-13 北京视联动力国际信息技术有限公司 A kind of monitoring system and method based on view networking
CN110418154A (en) * 2019-07-30 2019-11-05 腾讯科技(深圳)有限公司 A kind of multi-medium data method for pushing, apparatus and system
CN110706824A (en) * 2019-09-27 2020-01-17 京东方科技集团股份有限公司 Interactive method, apparatus, server, system and medium for remote consultation
CN210405337U (en) * 2019-05-30 2020-04-24 联想(上海)信息技术有限公司 Dynamic expansion and contraction capacity device of AR server
CN111444015A (en) * 2020-03-24 2020-07-24 北京奇艺世纪科技有限公司 Server control method and device, computer equipment and storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103561285A (en) * 2013-10-11 2014-02-05 深圳市同洲电子股份有限公司 Program broadcasting method and network plug-flow server
CN108668178A (en) * 2017-03-31 2018-10-16 华为技术有限公司 A kind of method of realizing group broadcasting and related network device
CN110233984A (en) * 2018-03-06 2019-09-13 北京视联动力国际信息技术有限公司 A kind of monitoring system and method based on view networking
CN109873718A (en) * 2019-01-23 2019-06-11 平安科技(深圳)有限公司 A kind of container self-adapting stretching method, server and storage medium
CN210405337U (en) * 2019-05-30 2020-04-24 联想(上海)信息技术有限公司 Dynamic expansion and contraction capacity device of AR server
CN110418154A (en) * 2019-07-30 2019-11-05 腾讯科技(深圳)有限公司 A kind of multi-medium data method for pushing, apparatus and system
CN110706824A (en) * 2019-09-27 2020-01-17 京东方科技集团股份有限公司 Interactive method, apparatus, server, system and medium for remote consultation
CN111444015A (en) * 2020-03-24 2020-07-24 北京奇艺世纪科技有限公司 Server control method and device, computer equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630438A (en) * 2021-06-25 2021-11-09 微梦创科网络科技(中国)有限公司 Stream processing task scheduling method and distributed stream processing system
CN113630438B (en) * 2021-06-25 2024-01-12 微梦创科网络科技(中国)有限公司 Stream processing task scheduling method and distributed stream processing system

Also Published As

Publication number Publication date
CN112543354B (en) 2023-05-09

Similar Documents

Publication Publication Date Title
CN110769278B (en) Distributed video transcoding method and system
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
US8924476B1 (en) Recovery and fault-tolerance of a real time in-memory index
US8874700B2 (en) Optimizing storage of data files
US20150237113A1 (en) Method and system for file transmission
US8819080B2 (en) System and method for collection, retrieval, and distribution of data
CN106789377B (en) Service parameter updating method of network element cluster
CN102882829A (en) Transcoding method and system
CN111770157B (en) Business processing method and device, electronic equipment and storage medium
CN114064211B (en) Video stream analysis system and method based on end-side-cloud computing architecture
US11943289B2 (en) Manipulation of content transmissions
CN113630438B (en) Stream processing task scheduling method and distributed stream processing system
US6973536B1 (en) Self-adaptive hybrid cache
Gao et al. vCache: Supporting cost-efficient adaptive bitrate streaming
EP1627500B1 (en) Service management using multiple service location managers
CN113312161A (en) Application scheduling method, platform and storage medium
CN112543354B (en) Service-aware distributed video cluster efficient telescoping method and system
WO2018226307A1 (en) System and method for analyzing video frames in a messaging system
WO2021073405A1 (en) Data distribution method, electronic device, and storage medium
US20160105506A1 (en) Manipulation and recording of content transmissions
US8239513B1 (en) Optimizing media distribution using metrics
AU2020226900B2 (en) Adaptive retrieval of objects from remote storage
CN112995241B (en) Service scheduling method and device
CN112256454B (en) Message delay processing method and system
CN110990213A (en) Method and device for monitoring user logs in cluster environment in real time

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