CN111756681A - Streaming media cascade scheduling method and device, electronic equipment and storage medium - Google Patents

Streaming media cascade scheduling method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN111756681A
CN111756681A CN201910253120.5A CN201910253120A CN111756681A CN 111756681 A CN111756681 A CN 111756681A CN 201910253120 A CN201910253120 A CN 201910253120A CN 111756681 A CN111756681 A CN 111756681A
Authority
CN
China
Prior art keywords
streaming media
identification information
played
server
cached
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910253120.5A
Other languages
Chinese (zh)
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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud 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 Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201910253120.5A priority Critical patent/CN111756681A/en
Publication of CN111756681A publication Critical patent/CN111756681A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • 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/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The embodiment of the invention provides a streaming media cascade scheduling method, a device, electronic equipment and a storage medium, wherein the method comprises the following steps: receiving a streaming media request sent by a user playing end, when the streaming media corresponding to the streaming media request cannot be inquired in a first process of a first streaming media server, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relation between the streaming media and the process, acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end. Therefore, the streaming media to be played can be obtained from the second process in which the streaming media to be played is stored, so that cascade query can be performed among the processes; feedback information which is not inquired by the user playing end is avoided, and the accuracy of the feedback information is improved.

Description

Streaming media cascade scheduling method and device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of streaming media technologies, and in particular, to a streaming media cascade scheduling method, apparatus, electronic device, and storage medium.
Background
With the development of internet technology, great convenience is brought to the life of people, for example, by using a streaming media technology, people can watch videos on line instead of completely downloading one video. Streaming media is a technology and process in which a series of media data is compressed, and then sent in segments over the network, and video and audio are transmitted instantly over the network for viewing. By using the streaming media technology, people can realize the buffer while watching only by waiting for a few minutes, thereby saving the waiting time of people for watching videos.
In a usage scenario, a streaming media technology may also be used for live broadcast, for example, live broadcast may be performed by using a live broadcast system as shown in fig. 1, where the live broadcast system includes a capture end 110, a live broadcast source station 120, a CDN node 130, and a play end 140. The acquisition terminal 110 may acquire audio/video information of a live broadcast, and transmit the acquired audio/video information to the live broadcast source station 120 by using a streaming media technology. The live broadcast source station 120 may be configured with a plurality of streaming media servers, and when the playing terminal 140 wants to view the audio and video information of the acquisition terminal 110, a request may be sent to the live broadcast source station 120, then, the streaming media server in the live broadcast source station 120 may distribute the audio and video information to a CDN (Content Delivery Network) node 130 corresponding to the playing terminal 140 by using a streaming media technology for caching, and finally, the CDN node 130 pushes the audio and video information cached by itself to the playing terminal 140.
Because the Nginx technology can implement one main process and multiple work processes, and when one work process is abnormal, the work of other work processes is not affected, so that most streaming media servers in the live source station 120 usually adopt the Nginx technology.
However, when the plurality of working processes receive the streaming media sent by the acquisition end 110, the streaming media are usually cached in respective corresponding memories, and the cached streaming media are not shared among the processes, when the live broadcast source station 120 receives a play request, the live broadcast source station 120 allocates the play request to one process of the streaming media server, and the process only queries whether the streaming media corresponding to the play request exists in its own memory, and if not, returns a non-existing feedback message. However, the streaming media corresponding to the play request may also be cached in the memory of other work processes in the streaming media server, which may cause the feedback message fed back by the live source station 120 to be incorrect.
Disclosure of Invention
The embodiment of the invention aims to provide a streaming media cascade scheduling method, a streaming media cascade scheduling device, electronic equipment and a storage medium, so as to realize cascade query among processes and improve the accuracy of feedback messages fed back. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present invention provides a streaming media cascade scheduling method, which is applied to a first streaming media server, and the method includes:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed for the streaming media request by the first streaming media server;
under the condition that the streaming media corresponding to the streaming media request is not inquired in the first process of the first streaming media server, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relation between the streaming media and the processes;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
Optionally, before receiving a streaming media request sent by a user playing end, and querying whether a streaming media corresponding to the streaming media request exists in a first process of a first streaming media server, the streaming media cascade scheduling method further includes:
recording identification information of each process of a first streaming media server and identification information of streaming media cached by each process in the stream pushing process;
and according to the identification information of each process and the identification information of the streaming media cached by the process, establishing the corresponding relation between the streaming media and the process in advance.
Optionally, before receiving a streaming media request sent by a user playing end, and querying whether a streaming media corresponding to the streaming media request exists in a first process of a first streaming media server, the streaming media cascade scheduling method further includes:
recording identification information of each process of a first streaming media server and identification information of streaming media cached by each process in the stream pushing process;
and sending the identification information of each process and the identification information of the streaming media cached by each process to a scheduling server, so that the scheduling server establishes the corresponding relation between the streaming media and the processes in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
Optionally, in the pre-established correspondence between the streaming media and the process, querying identification information of a second process corresponding to the identification information of the streaming media to be played includes:
sending an inquiry request carrying identification information of the streaming media to be played to a scheduling server, so that the scheduling server searches identification information of a second process corresponding to the identification information of the streaming media to be played in a corresponding relation between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process;
optionally, the acquiring, from the second process, the streaming media to be played corresponding to the identification information of the streaming media to be played, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end, includes:
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
Optionally, the pre-establishing a correspondence between the streaming media and the process according to the identification information of each process and the identification information of the streaming media cached by the process includes:
the identification information of each process is taken as an element value, the identification information of the streaming media cached by the process is taken as a field, and a key value table containing the identification information of each process and the identification information of the streaming media cached by the process is established in advance;
optionally, in the pre-established correspondence between the streaming media and the process, querying identification information of a second process corresponding to the identification information of the streaming media to be played includes:
and inquiring identification information of the second process corresponding to the identification information of the streaming media to be played in a pre-established key value table.
Optionally, the streaming media cascade scheduling method further includes:
the pre-established key value table is periodically updated.
Optionally, after querying, in a pre-established correspondence between the streaming media and the process, identification information of a second process corresponding to the identification information of the streaming media to be played, the streaming media cascade scheduling method further includes:
when the identification information of the second process is not inquired, inquiring the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of a second streaming media server corresponding to the second process in the corresponding relation of the streaming media, the process and the streaming media server which is pre-established by the scheduling server in the stream pushing process, wherein the corresponding relation of the streaming media, the process and the streaming media server which is pre-established has a corresponding relation with the identification information of the process and the identification information of the process in the corresponding relation of the streaming media, the process and the streaming media server which is pre-established has a corresponding relation with the identification information of the process and the identification information of the streaming media server;
optionally, the acquiring, from the second process, the streaming media to be played corresponding to the identification information of the streaming media to be played, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end, includes:
sending an acquisition request carrying identification information of a second process to the second streaming media server based on the identification information of the second streaming media server;
and acquiring the identification information of the second streaming media server based on the second process, searching the to-be-played streaming media corresponding to the identification information of the to-be-played streaming media from the second process, and sending the acquired to-be-played streaming media corresponding to the identification information of the to-be-played streaming media to the user playing end.
Optionally, before receiving a streaming media request sent by a user playing end, and querying whether a streaming media corresponding to the streaming media request exists in a first process of a first streaming media server, the streaming media cascade scheduling method further includes:
and sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process to a scheduling server, so that the scheduling server establishes the corresponding relation among the streaming media, the processes and the streaming media server in advance according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
Optionally, after the correspondence between the streaming media and the process is established in advance according to the identification information of each process and the identification information of the streaming media cached by the process, the streaming media cascade scheduling method further includes:
and after the stream pushing process is finished, deleting the corresponding relation between the pre-established stream media and the process.
Optionally, the streaming media cascade scheduling method further includes:
and after the stream pushing process is finished, indicating the scheduling server to delete the corresponding relation of the pre-established stream media, the process and the stream media server.
In a second aspect, an embodiment of the present invention further provides a streaming media cascade scheduling apparatus, which is applied to a first streaming media server, and the apparatus includes:
the first query module is used for receiving a streaming media request sent by a user playing end and querying whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed by the first streaming media server for the streaming media request;
the second query module is used for querying identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relationship between the streaming media and the process under the condition that the streaming media corresponding to the streaming media request is not queried in the first process of the first streaming media server, wherein the pre-established corresponding relationship between the streaming media and the process is established in the stream pushing process, and the identification information of the streaming media and the identification information of the process have a corresponding relationship in the pre-established corresponding relationship between the streaming media and the process;
and the first sending module is used for acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
Optionally, the streaming media cascade scheduling apparatus further includes:
the first recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the corresponding relation establishing module is used for establishing the corresponding relation between the streaming media and the process in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
Optionally, the streaming media cascade scheduling apparatus further includes:
the second recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the second sending module is used for sending the identification information of each process and the identification information of the streaming media cached by each process to the scheduling server, so that the scheduling server establishes the corresponding relation between the streaming media and the processes in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
Optionally, the second query module is specifically configured to:
sending an inquiry request carrying identification information of the streaming media to be played to a scheduling server, so that the scheduling server searches identification information of a second process corresponding to the identification information of the streaming media to be played in a corresponding relation between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process;
the first sending module is specifically configured to:
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
Optionally, the correspondence relationship establishing module is specifically configured to:
the identification information of each process is taken as an element value, the identification information of the streaming media cached by the process is taken as a field, and a key value table containing the identification information of each process and the identification information of the streaming media cached by the process is established in advance;
the second query module is specifically configured to:
and inquiring identification information of the second process corresponding to the identification information of the streaming media to be played in a pre-established key value table.
Optionally, the streaming media cascade scheduling apparatus further includes:
and the updating module is used for periodically updating the pre-established key value table.
Optionally, the streaming media cascade scheduling apparatus further includes:
the third query module is used for querying identification information of a second process corresponding to the identification information of the streaming media to be played and identification information of a second streaming media server corresponding to the second process in the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established in the scheduling server when the identification information of the second process is not queried, wherein the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established is established by the scheduling server in the stream pushing process, and in the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established, the identification information of the streaming media and the identification information of the process have a corresponding relationship, and the identification information of the process and the identification information of the streaming media server have a corresponding relationship;
a first sending module comprising:
the sending submodule is used for sending an acquisition request carrying the identification information of the second process to the second streaming media server based on the identification information of the second streaming media server;
and the obtaining submodule is used for obtaining the to-be-played streaming media which is searched by the second streaming media server from the second process and corresponds to the identification information of the to-be-played streaming media based on the identification information of the second process, and sending the to-be-played streaming media which corresponds to the identification information of the to-be-played streaming media to the user playing end.
Optionally, the streaming media cascade scheduling apparatus further includes:
and the third sending module is used for sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process to the scheduling server, so that the scheduling server establishes the corresponding relation among the streaming media, the processes and the streaming media server in advance according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
Optionally, the streaming media cascade scheduling apparatus further includes:
and the first deleting module is used for deleting the corresponding relation between the pre-established streaming media and the process after the stream pushing process is finished.
Optionally, the streaming media cascade scheduling apparatus further includes:
and the second deleting module is used for indicating the scheduling server to delete the corresponding relation of the pre-established streaming media, the process and the streaming media server after the stream pushing process is finished.
In a third aspect, an embodiment of the present invention further provides an electronic device, including a processor and a machine-readable storage medium, where the machine-readable storage medium stores machine-executable instructions capable of being executed by the processor, and the processor is caused by the machine-executable instructions to: the steps of the streaming media cascade scheduling method provided by the first aspect are implemented.
In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the streaming media cascade scheduling method provided in the first aspect are implemented.
In a fifth aspect, an embodiment of the present invention further provides a computer program product containing instructions, which when run on a computer, causes the computer to perform the steps of the streaming media cascade scheduling method provided in the first aspect.
In a sixth aspect, an embodiment of the present invention further provides a computer program, which when running on a computer, causes the computer to execute the steps of the streaming media cascade scheduling method provided in the first aspect.
The embodiment of the invention provides a streaming media cascade scheduling method, a device, an electronic device and a storage medium, when a streaming media request sent by a user playing end is received, whether streaming media corresponding to the streaming media request exists or not can be firstly inquired in a first process of a first streaming media server, in case that the streaming media corresponding to the streaming media request is not queried in the first process of the first streaming media server, the identification information of the second process corresponding to the identification information of the streaming media to be played can be inquired according to the pre-established corresponding relationship between the streaming media and the process, after querying the identification information of the second process, the streaming media to be played corresponding to the identification information of the streaming media to be played can be obtained from the second process, and finally, the obtained streaming media to be played corresponding to the identification information of the streaming media to be played can be sent to the user playing end. Therefore, when the streaming media to be played is not cached in the first process, the streaming media to be played is obtained from the second process in which the streaming media to be played is cached, so that cascade query can be performed among the processes; when the streaming media to be played is obtained, the streaming media to be played can be sent to the user playing end to be played, so that feedback information which is not queried by the user playing end is prevented from being fed back when the streaming media to be played is not queried in the first process, and accuracy of the feedback information is improved. Of course, it is not necessary for any product or method of practicing the invention to achieve all of the above-described advantages at the same time.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a webcast system in the prior art;
fig. 2 is a flowchart of a first implementation manner of a streaming media cascade scheduling method according to an embodiment of the present invention;
fig. 3 is a flowchart of a streaming media cascade scheduling method according to a second implementation manner of the embodiment of the present invention;
fig. 4 is a schematic diagram of signaling interaction between processes and scheduling components in a streaming media cascade scheduling method according to an embodiment of the present invention;
fig. 5 is a flowchart of a streaming media cascade scheduling method according to a third implementation manner of the embodiment of the present invention;
fig. 6 is a flowchart of a fourth implementation manner of a streaming media cascade scheduling method according to an embodiment of the present invention;
fig. 7 is a schematic diagram of signaling interaction between each streaming media server and a scheduling server in a streaming media cascade scheduling method according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a streaming media cascade scheduling apparatus according to an embodiment of the present invention;
fig. 9 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order to solve the problems in the prior art, embodiments of the present invention provide a streaming media cascade scheduling method, apparatus, electronic device, and storage medium, so as to implement cascade query among processes and improve accuracy of feedback messages fed back.
First, a streaming media cascade scheduling method according to an embodiment of the present invention is introduced below, as shown in fig. 2, which is a flowchart of a first implementation manner of a streaming media cascade scheduling method according to an embodiment of the present invention, where the method may be applied to a first streaming media server, and the method may include:
s210, receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server.
The streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed by the first streaming media server for the streaming media request.
In general, a streaming media service provider may set a streaming media server cluster, and when receiving a streaming media request sent by a user playing end, the streaming media server provider may assign the streaming media request to any streaming media server in the streaming media server cluster for processing.
After receiving the streaming media request, the first streaming media server may locally search, in order to push the corresponding streaming media for the user playing end, whether the streaming media corresponding to the identification information of the streaming media to be played, which is carried in the streaming media request, exists in the first streaming media server.
In some examples, in the streaming process, the first streaming media server allocates the received streaming media to each process of the first streaming media server, and each process is cached in the corresponding memory, so that the first streaming media server may search whether the streaming media to be played exists in the memory corresponding to one process according to the identification information of the streaming media to be played, that is, query whether the streaming media corresponding to the identification information of the streaming media to be played exists in the first process.
For example, for a streaming media server adopting the nginnx technology, the streaming media server may have one host process and multiple work processes, and the host process may select one work process according to the identification information of the streaming media to be played, and the selected work process searches whether the streaming media to be played exists in a memory corresponding to the selected work process.
When it is queried in the first process that there is no streaming media corresponding to the identification information of the streaming media to be played, step S220 may be performed.
S220, inquiring the identification information of the second process corresponding to the identification information of the streaming media to be played in the pre-established corresponding relation between the streaming media and the processes.
The pre-established corresponding relation between the streaming media and the process is established in the stream pushing process, and in the pre-established corresponding relation between the streaming media and the process, the identification information of the streaming media and the identification information of the process have a corresponding relation.
In some examples, when the streaming media to be played is not queried in the first process, the streaming media to be played may also be cached in the memories of other processes, and in order to avoid that the first streaming media server sends the feedback information that is not queried to the user playing end, the streaming media to be played may also be searched in the caches of other processes.
In this regard, the identification information of the second process corresponding to the identification information of the streaming media to be played may be queried in a correspondence relationship between the streaming media and the processes established in advance. The pre-established correspondence between the streaming media and the processes is established based on the identification information of each process and the identification information of the streaming media cached by each process when each process caches the streaming media in the respective memory.
In some examples, the pre-established correspondence between the streaming media and the process may be a correspondence table as shown in table 1.
Table 1 correspondence table between streaming media and process
Figure BDA0002012877770000101
In table 1, at least one streaming media may be cached in the memory of each process, and therefore, when the corresponding relationship is established, the identification information of one process may at least correspond to the identification information of one streaming media.
Therefore, when the streaming media to be played is cached in the memory of any one of the other processes, the identification information of the process in which the streaming media to be played is cached, that is, the identification information of the second process, can be found by searching in the pre-established correspondence between the streaming media and the process.
S230, acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
After querying the identification information of the second process in which the streaming media to be played is cached, the streaming media to be played corresponding to the identification information of the streaming media to be played can be acquired from the second process, and the acquired streaming media to be played corresponding to the identification information of the streaming media to be played is sent to the user playing end.
In some examples, after the identification information of the second process is queried, the second process may be instructed to transmit the streaming media to be played, which is cached in the memory of the second process and corresponds to the identification information of the streaming media to be played, to the network card of the first streaming media server, and the network card of the first streaming media server is transmitted to the user playing end.
It can be seen that, with the streaming media cascade scheduling method provided in the embodiments of the present invention, when a streaming media request sent by a user playing end is received, it may be first queried in a first process of a first streaming media server whether there is a streaming media corresponding to the streaming media request, if there is no streaming media corresponding to the streaming media request, it may query, according to a pre-established correspondence between the streaming media and the process, identification information of a second process corresponding to identification information of the streaming media to be played, after the identification information of the second process is queried, the streaming media to be played corresponding to the identification information of the streaming media to be played may be obtained from the second process, and finally, the obtained streaming media to be played corresponding to the identification information of the streaming media to be played may be sent to the user playing end. Therefore, when the streaming media to be played is not cached in the first process, the streaming media to be played is obtained from the second process in which the streaming media to be played is cached, so that cascade query can be performed among the processes; when the streaming media to be played is obtained, the streaming media to be played can be sent to the user playing end to be played, so that feedback information which is not queried by the user playing end is prevented from being fed back when the streaming media to be played is not queried in the first process, and accuracy of the feedback information is improved.
In some examples, the correspondence between the pre-established streaming media and the process may be stored in the first streaming media server, and the first streaming media server may set a shared memory for the correspondence between the pre-established streaming media and the process, so that on the basis of the first implementation manner of the streaming media cascade scheduling method shown in fig. 2, an embodiment of the present invention further provides a possible implementation manner, as shown in fig. 3, which is a flowchart of a second implementation manner of the streaming media cascade scheduling method according to the embodiment of the present invention, and the streaming media cascade scheduling method may include:
s310, recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process.
S320, according to the identification information of each process and the identification information of the streaming media cached by the process, the corresponding relation between the streaming media and the process is established in advance.
In some examples, after the first streaming media server receives a streaming media sent by the acquisition end, the first streaming media server may select a work process to cache the received streaming media, and may record identification information of the selected process and identification information of the streaming media cached by the selected process.
After the first streaming media server receives the multiple streaming media, the multiple working processes can be selected to cache the received multiple streaming media respectively, and then the identification information of the selected working processes and the identification information of the streaming media cached in each selected working process are recorded.
For example, assume that the first streaming server receives streaming media 1, 2, 3, 4, 5, and 6, and assume that the first streaming server has process 1, process 2, and process 3, which are 3 processes. Then process 1 may be selected to cache streaming media 1 and streaming media 3, process 2 may be selected to cache streaming media 2 and streaming media 4, and process 3 may cache streaming media 5 and streaming media 6, and then the first streaming server may record identification information of process 1, identification information of streaming media 1 and identification information of streaming media 3 cached in process 1, identification information of process 2, identification information of streaming media 2 and identification information of streaming media 4 cached in process 2, and identification information of process 3, identification information of streaming media 6 and identification information of streaming media 3 cached in process 5.
Then, the first streaming media server may pre-establish a correspondence between the streaming media and the process based on the identification information of each process and the identification information of the streaming media cached by the process.
For example, the first streaming media server may establish the correspondence table shown in table 1 based on the identification information of process 1, the identification information of streaming media 1 and 3 cached in process 1, the identification information of process 2, the identification information of streaming media 2 and 4 cached in process 2, the identification information of process 3, the identification information of streaming media 6 and 3 cached in process 5.
In some examples, a shared memory may be set in the first streaming media server for the correspondence table to store the correspondence between the pre-established streaming media and the processes, and each process of the first streaming media server may conveniently access the shared memory to search for the identification information of the second process in the subsequent step.
In some examples, a component may be preset in a first streaming media server in a software manner, after each process of the first streaming media server caches streaming media, the component may send identification information of the process and identification information of the cached streaming media to the component, and the component may establish a correspondence between the streaming media and the process based on the identification information sent by each process and the identification information of the streaming media cached by the process. Therefore, the function of establishing the corresponding relation between the streaming media and the process is realized.
S330, receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of the first streaming media server.
When it is queried in the first process that there is no streaming media corresponding to the identification information of the streaming media to be played, step S340 may be performed.
S340, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in the correspondence between the streaming media and the processes which are pre-established and locally stored in the first streaming media server.
When the streaming media corresponding to the streaming media request is not queried in the first process of the first streaming media server, the first streaming media server may query the identification information of the second process corresponding to the identification information of the streaming media to be played in a correspondence between the streaming media and the process, which is locally stored and established in advance. So as to obtain the streaming media to be played from the queried process of caching the streaming media to be played.
And S350, acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
It is understood that steps S330 and S350 are similar to or the same as steps S220 and S230 in the first embodiment, and are not described again here.
In some examples, when establishing a correspondence between streaming media and processes, a key value table including identification information of each process and identification information of streaming media cached by the process may be established in advance with the identification information of each process as an element value and the identification information of streaming media cached by the process as a field; thereby storing identification information of each process and identification information of the streaming media cached by the process in the form of key-value pairs. Thus, the management of the identification information of each process and the identification information of the streaming media cached by the process can be facilitated.
In some examples, after the key value table including the identification information of each process and the identification information of the streaming media cached by the process is established, when the identification information of the second process corresponding to the identification information of the streaming media to be played is queried, the identification information of the second process corresponding to the identification information of the streaming media to be played may be queried in the pre-established key value table. Therefore, the identification information of the second process corresponding to the identification information of the streaming media to be played can be conveniently inquired, and the time overhead during inquiry is further saved.
By establishing the corresponding relation in the first streaming media server, each process of the first streaming media server can inquire the identification information of the process caching the streaming media to be played in the first streaming media server, so that the streaming media to be played can be acquired, the time overhead during interaction between devices is reduced, and the time spent in the inquiring process is saved.
In some examples, after the key value table is established in advance, since the key value table may periodically clean up the key value pairs that are out of date, for this reason, an indication of updating the key value pairs may be periodically sent to the key value table, so as to ensure that the key value table does not clean up the key value pairs stored in the push flow process. Therefore, when the key value table is queried, the identification information of the process caching the streaming media to be played can be queried.
In some examples, a duration of one period of the sending of the update key-value pairs is less than a duration of a period of the key-value table clearing stale key-value pairs.
In still other examples, a process in which the audio/video capture terminal transmits the streaming media to the first streaming media server is referred to as a stream pushing process, and a process in which the first streaming media server transmits the streaming media requested by the user play terminal to the user play terminal is referred to as a stream pulling process.
In order to reduce the occupation of the shared memory, the embodiment of the present invention further provides a possible implementation manner, and after the audio/video acquisition end completes the process of transmitting the streaming media to the first streaming media server, that is, after the stream pushing process is completed, the pre-established corresponding relationship between the streaming media and the process is deleted. In this way, space for the shared memory may be freed.
In still other examples, the key value table is deleted when the pre-established correspondence between the streaming media and the process is stored in the shared memory in the form of the key value table.
Correspondingly, that is, only when the stream pushing process is performed, the user playing end can acquire the streaming media, and when the stream pushing process is completed, the user playing end cannot acquire the streaming media.
In some examples, after the stream pushing process is completed, the streaming media cached in each process of the first streaming media server is also deleted, and the memory space corresponding to each process is released.
For more clearly explaining the embodiment of the present invention, a signaling interaction process between each process and the scheduling component in the first streaming server is taken as an example to be described here, for example, a signaling interaction diagram between each process and the scheduling component as shown in fig. 4; in fig. 4, a user play end, a process 1, a scheduling component, and a process 2 may be included.
First, process 1 may receive a streaming media sent by an audio/video streaming media acquisition end, and cache the streaming media in its own memory, and then execute step S410.
S410, sending the identification information of the process 1 and the identification information of the streaming media cached in the memory of the process 1.
The scheduling component may execute step S420 after receiving the identification information of the process 1 sent by the process 1 and the identification information of the streaming media cached in the memory of the process 1.
In some examples, the process is described as process 1, and it is understood that the scheduling component may also receive identification information of the process and identification information of the corresponding streaming media sent by other processes of the first streaming media server.
And S420, establishing a key value table by taking the identification information of the process 1 as an element value and the identification information of the streaming media cached in the memory of the process 1 as a field.
In some examples, the scheduling component may perform the same or similar steps as step S420 to establish the key value table after receiving identification information of a process launched by another process and identification information of corresponding streaming media.
When the user at the user playing end wants to watch the streaming media, a streaming media request may be sent to the first streaming media server, that is, step S430 is executed, the streaming media request sent by the user playing end is sent, after the first streaming media server receives the streaming media request, a process may be selected by the first streaming media server to obtain the streaming media corresponding to the streaming media request, and if the process selected by the first streaming media server is process 2, process 2 may receive the streaming media request, and then step S440 may be executed.
S440, finding whether there is streaming media corresponding to the streaming media request.
When the streaming media corresponding to the streaming media request is not cached in the cache of the process 2, the streaming media corresponding to the streaming media request cannot be queried in the memory of the process 2 itself, and at this time, the step S450 may be executed.
S450, sending a query request carrying the identification information of the streaming media to be played.
In some examples, since the streaming media request carries identification information of the streaming media to be played, the process 2 may obtain the identification information of the streaming media to be played from the streaming media request, add the identification information to the query request, and send the query request to the scheduling component. The scheduling component, upon receiving the query request, may perform step S460.
S460, inquiring identification information of the process 1 corresponding to the identification information of the streaming media to be played.
Here, assuming that the process in which the streaming media to be played is cached is process 1, the scheduling component may query, in its key value table, the identification information of the process corresponding to the identification information of the streaming media to be played, that is, the identification information of process 1, based on the identification information of the streaming media to be played. After querying the process identification information corresponding to the identification information of the streaming media to be played, that is, the identification information of process 1, step S470 may be executed.
S470, sending the identification information of the process 1 to the process 2. So that the process 1 can send the streaming media to be played to the user playing end through the subsequent steps. After receiving the identification information of process 1, process 2 may send an inquiry request to process 1, that is, execute step S480.
S480, sending a sending instruction carrying the identification information of the streaming media to be played to the process 1.
Process 1, upon receiving the transmission instruction, may perform steps S490 and S500.
S490, searching the streaming media corresponding to the identification information of the streaming media to be played.
S500, the streaming media to be played is sent to a user playing end.
Therefore, through the embodiment of the invention, when the streaming media to be played is not cached in the process 2, the process 1 caching the streaming media to be played can be inquired, and then the process 1 can send the streaming media to be played to the user playing end, so that feedback information which cannot be inquired can not be fed back to the user playing end when the streaming media to be played is not cached in the process 2.
In some examples, the correspondence between the streaming media and the process that are established in advance may also be stored in a scheduling server, for which, on the basis of the first implementation manner of the streaming media cascade scheduling method shown in fig. 2, an embodiment of the present invention further provides a possible implementation manner, as shown in fig. 5, which is a flowchart of a third implementation manner of the streaming media cascade scheduling method according to the embodiment of the present invention, and the streaming media cascade scheduling method may include:
and S510, recording identification information of each process of the first streaming media server and identification information of the streaming media cached by each process in the stream pushing process.
S520, the identification information of each process and the identification information of the streaming media cached by each process are sent to a scheduling server, so that the scheduling server establishes the corresponding relation between the streaming media and the process in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
In some examples, after the first streaming media server records the identification information of each process and the identification information of the streaming media cached by the process in the stream pushing process, the identification information of the process and the identification information of the streaming media cached by the process in the stream pushing process may also be sent to the scheduling server.
The scheduling server, after receiving the identification information of the process and the identification information of the streaming media cached in the process of pushing the stream, may locally establish a correspondence between the streaming media and the process in the scheduling server based on the received identification information of the process and the identification information of the streaming media cached in the process.
In some examples, when the scheduling server establishes a correspondence between the streaming media and the process in advance according to the identification information of each process and the identification information of the streaming media cached by the process, the scheduling server may establish a key value table containing the identification information of each process and the identification information of the streaming media cached by the process in advance by using the identification information of each process as an element value and using the identification information of the streaming media cached by the process as a field.
In some examples, a shared memory may be set in the scheduling server for the correspondence table to store the correspondence between the pre-established streaming media and the processes, and each process of the first streaming media server may conveniently access the shared memory to search for the identification information of the second process in the subsequent step.
S530, receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server.
When it is queried in the first process that there is no streaming media corresponding to the identification information of the streaming media to be played, step S540 may be performed.
And S540, sending a query request carrying the identification information of the streaming media to be played to the scheduling server, so that the scheduling server searches the identification information of the second process corresponding to the identification information of the streaming media to be played in the correspondence between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process.
When the streaming media corresponding to the streaming media request is not queried in the first process of the first streaming media server, the first streaming media server may send a query request carrying identification information of the streaming media to be played to the scheduling server, so that the scheduling server can query.
After receiving the query request, the scheduling server may search for identification information of a second process corresponding to the identification information of the streaming media to be played in a correspondence between the streaming media and the processes which is established in advance locally. When the scheduling server finds the identification information of the second process, the identification information of the second process can be fed back to the first streaming media server.
In some examples, when the above-mentioned scheduling server establishes a key value table locally, the scheduling server may look up the identification information of the second process corresponding to the identification information of the streaming media to be played in the key value table established locally in advance.
And S550, acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
After receiving the identification information of the second process sent by the scheduling server, the first streaming media server may obtain the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process based on the identification information of the second process, and send the obtained streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
It is understood that step S530 is similar to or identical to step S220 in the first embodiment, and is not described herein again.
In the embodiment of the invention, the corresponding relation is established by the scheduling server, so that the corresponding relation can be conveniently maintained on the basis of realizing the aim of the embodiment of the invention, and the streaming media server only needs to inquire.
In some examples, after the key value table is established in advance, since the key value table may periodically clean up the key value pairs that are out of date, for this reason, an indication of updating the key value table may be periodically sent to the scheduling server, so as to ensure that the key value table does not clean up the key value pairs stored in the push flow process. Therefore, when the key value table is queried, the identification information of the process caching the streaming media to be played can be queried.
In some examples, in order to reduce the occupation of the shared memory of the scheduling server by the corresponding relationship, embodiments of the present invention further provide a possible implementation manner, after the audio/video acquisition end completes the process of transmitting the streaming media to the first streaming media server, that is, after the stream pushing process is completed, the corresponding relationship between the streaming media and the process that is pre-established in the scheduling server is deleted. In this way, space for the shared memory may be freed.
In still other examples, when the pre-established correspondence between the streaming media and the process is stored in the scheduling server in the form of a key value table, the key value table is deleted.
On the basis of the streaming media cascade scheduling method shown in fig. 2, an embodiment of the present invention further provides a possible implementation manner, and as shown in fig. 6, the method is a flowchart of a fourth implementation manner of the streaming media cascade scheduling method according to the embodiment of the present invention, and the method may include:
s610, recording identification information of each process of the first streaming media server and identification information of the streaming media cached by each process in the stream pushing process.
S620, according to the identification information of each process and the identification information of the streaming media cached by the process, the corresponding relation between the streaming media and the process is established in advance.
And S630, sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process to the scheduling server, so that the scheduling server establishes the corresponding relation among the streaming media, the processes and the streaming media server in advance according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
In some examples, after the first streaming media server receives a plurality of streaming media, a plurality of work processes may be selected to cache the received plurality of streaming media, and identification information of the selected work processes and identification information of the streaming media cached in each selected work process may be recorded. Then, the corresponding relation between the streaming media and the process can be established in advance based on the identification information of each process and the identification information of the streaming media cached by the process.
In some examples, the other streaming media servers belonging to the same streaming media server cluster as the first streaming media server may also establish the corresponding relationship between the respective streaming media and the process in the respective streaming media servers through the same or similar steps as those in steps S610 and S620 described above.
In some examples, in order to implement process scheduling among multiple servers in subsequent steps, the first streaming media server may further send identification information of the first streaming media server, identification information of each process in the first streaming media server, and identification information of streaming media cached by each process to a scheduling server, where the scheduling server may, after receiving the identification information of the first streaming media server sent by the first streaming media server, the identification information of each process in the first streaming media server, and the identification information of streaming media cached by each process, pre-establish a correspondence relationship between the streaming media, the process, and the streaming media server based on the identification information of the first streaming media server, the identification information of each process in the first streaming media server, and the identification information of streaming media cached by each process.
In still other examples, the other streaming media servers connected to the scheduling server may also send the identification information of the other streaming media servers, the identification information of each process of the other streaming media servers, and the identification information of the streaming media cached by each process to the scheduling server, so as to establish a corresponding relationship between the streaming media, the process, and the streaming media server.
For example, a correspondence table of streaming media, processes, and streaming media servers as shown in table 2 may be established. In table 2, each streaming server may have at least one process, for example, the streaming server 1 may have a process 1 and a process 2, the streaming server 2 may have a process 3 and a process 4, and the streaming server 3 may have a process 5 and a process 6. At least one streaming media may be cached in the memory of each process, for example, the streaming media 1 may be cached in the process 1 of the streaming media server 1, and the streaming media 4 may be cached in the process 3 of the streaming media server 2.
It should be understood that the processes may be counted from 1 in each streaming server, and the processes are cumulatively counted by the number of processes in each streaming server for distinction in table 2.
Therefore, the correspondence relationship shown in table 2 may be established based on the identification information of the streaming server sent by each streaming server, the identification information of the process in the streaming server, and the identification information of the streaming media cached in each process.
Table 2 correspondence between streaming media, process, and streaming media server
Figure BDA0002012877770000191
And S640, receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of the first streaming media server. If not, step S650 is performed.
S650, inquiring the identification information of the second process corresponding to the identification information of the streaming media to be played in the corresponding relation between the pre-established streaming media and the process.
And S660, when the identification information of the second process is not inquired, inquiring the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of the second streaming media server corresponding to the second process in the pre-established corresponding relationship among the streaming media, the process and the streaming media server of the scheduling server.
The preset corresponding relation among the streaming media, the process and the streaming media server is established by the scheduling server in the stream pushing process, and in the preset corresponding relation among the streaming media, the process and the streaming media server, the identification information of the streaming media and the identification information of the process have a corresponding relation, and the identification information of the process and the identification information of the streaming media server have a corresponding relation.
After the corresponding relationship between the streaming media and the process is respectively established in the first streaming media server through the steps, and after the corresponding relationship between the streaming media, the process and the streaming media server is established in the scheduling server, when the first streaming media server receives a streaming media request sent by a user playing end, whether the streaming media corresponding to the streaming media request exists in the memory of each process of the first streaming media server can be firstly searched.
When the streaming media corresponding to the streaming media request is not found in all the processes of the first streaming media server, that is, when the identification information of the second process is not queried, the first streaming media server may send a query request to the scheduling server, requesting the scheduling server to query the identification information of the second process corresponding to the identification information of the streaming media to be played in the pre-established correspondence relationship between the streaming media, the processes and the streaming media server.
In some examples, after querying the identification information of the second process corresponding to the identification information of the streaming media to be played, the scheduling server may further determine the identification information of the second streaming media server where the second process is located, so that the first streaming media server can determine the streaming media server where the second process is located. And then, the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of the second streaming media server corresponding to the second process are sent to the first streaming media server.
And S670, sending an acquisition request carrying the identification information of the second process to the second streaming media server based on the identification information of the second streaming media server.
And S680, acquiring the identification information of the second process based on the second streaming media server, searching the to-be-played streaming media corresponding to the identification information of the to-be-played streaming media from the second process, and sending the acquired to-be-played streaming media corresponding to the identification information of the to-be-played streaming media to the user playing end.
After receiving the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of the second streaming media server corresponding to the second process, the first streaming media server may send an acquisition request to the second streaming media server based on the identification information of the second streaming media server to acquire the streaming media to be played. The acquisition request may carry identification information of the second process, so that the second streaming media server determines the process of the streaming media to be played.
After receiving the acquisition request carrying the identification information of the second process, the second streaming media server may acquire the streaming media corresponding to the identification information of the streaming media to be played from the second process based on the identification information of the second process, and send the streaming media to the first streaming media server.
After receiving the streaming media corresponding to the identification information of the streaming media to be played, the first streaming media server may send the streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end, so that the user playing end plays the streaming media to be played.
By the embodiment of the invention, when the streaming media corresponding to the streaming media request is not cached in the first streaming media server, the streaming media server cached with the streaming media corresponding to the streaming media request and the process cached with the streaming media corresponding to the streaming media request can be determined, and then the streaming media is acquired from the streaming media server cached with the streaming media corresponding to the streaming media request and is sent to the user playing end. And then, the cascade scheduling among a plurality of streaming media servers can be realized, the corresponding streaming media can be found for the user playing end as much as possible, and the user experience is improved.
In some examples, in order to reduce the occupation of the storage space of the scheduling server, after the stream pushing process of the first streaming media server is completed, a deletion request for deleting the correspondence may be sent to the scheduling server, so as to delete the identification information of the first streaming media server, the identification information of each process of the first streaming media server, the identification information of the streaming media cached in each process of the first streaming media service, and the corresponding correspondence. In this way, the occupation of the storage space of the scheduling server can be reduced.
For a clearer explanation of the embodiments of the present invention, a signaling interaction process between the streaming media server and the scheduling server is taken as an example, for example, a signaling interaction diagram between each streaming media server and the scheduling server as shown in fig. 7; in fig. 7, a user playing side, a first streaming media server, a scheduling server, and a second streaming media server may be included.
First, a first streaming media server may receive streaming media sent by an audio/video streaming media acquisition end, and cache the streaming media in a memory of a process of the first streaming media server, and then the first streaming media server may execute steps S710 to S730, so as to establish a correspondence between the streaming media and the process locally at the first streaming media server, and enable a scheduling server to establish a correspondence between the streaming media, the process, and the streaming media server at the scheduling server.
And S710, recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process.
S720, according to the identification information of each process and the identification information of the streaming media cached by the process, the corresponding relation between the streaming media and the process is established in advance.
And S730, sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
In some examples, the second streaming server may also perform the same or similar steps as steps S710 to S730, so that the correspondence between the streaming media and the process is also established locally at the second streaming server.
S740, pre-establishing a corresponding relationship among the streaming media, the processes and the streaming media server according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
After receiving the identification information of the first streaming media server, the identification information of each process in the first streaming media server, and the identification information of the streaming media cached by each process, the scheduling server may establish a corresponding relationship between the streaming media, the process, and the streaming media server locally at the scheduling server.
In some examples, since the second streaming media server may also send identification information of itself, identification information of each process of itself, and identification information of streaming media cached by each process, the above-mentioned established correspondence relationship between streaming media, processes, and streaming media servers may also include identification information of the second streaming media server and identification information of each process in the second streaming media server.
And S750, sending the streaming media request sent by the user playing end.
S760, whether the streaming media corresponding to the streaming media request exists is inquired in the first process, and if not, the identification information of the second process corresponding to the identification information of the streaming media to be played is inquired in the corresponding relation between the streaming media and the process which is established in advance.
In some examples, the user playing end may send a streaming request to the first streaming server to request to play the streaming. After receiving the streaming media request, the first streaming media server may adopt step S760 to search whether there is streaming media corresponding to the streaming media request in each process of the first streaming media server. If the streaming media exists, the inquired streaming media can be sent to a user playing end. When not queried in the first streaming server, step S770 may be performed.
S770, when the identification information of the second process is not queried, sending a query request carrying the identification information of the streaming media to be played.
S780, in the pre-established correspondence between the streaming media, the process, and the streaming media server, querying the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of the second streaming media server corresponding to the second process.
S790, sending the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of the second streaming media server corresponding to the second process.
When the first streaming media server does not inquire the streaming media corresponding to the streaming media request, an inquiry request carrying identification information of the streaming media to be played can be sent to the scheduling server, after the scheduling server receives the inquiry request, the scheduling server can inquire and cache identification information of a second process of the streaming media corresponding to the streaming media request and identification information of a second streaming media server where the second process is located in a pre-established corresponding relation among the streaming media, the processes and the streaming media server, and then the identification information of the second streaming media server and the identification information of the second process are sent to the first streaming media server.
And S7910, sending an acquisition request carrying the identification information of the second process to the second streaming media server.
S7920, searching for the streaming media corresponding to the identification information of the streaming media to be played in the second process.
And S7930, sending the streaming media corresponding to the identification information of the streaming media to be played.
S7940, sending the streaming media to be played to a user playing end.
After receiving the identification information of the second streaming server and the identification information of the second process, the first streaming server may send an acquisition request to the second streaming server, where the acquisition request may carry the identification information of the streaming to be played and the identification information of the second process.
After receiving the acquisition request, the second streaming media server may acquire the streaming media corresponding to the identification information of the streaming media to be played from the second process, and send the streaming media to the first streaming media server.
After receiving the streaming media to be played corresponding to the identification information of the streaming media to be played, the first streaming media server may send the streaming media to be played to the user playing end, so that the user playing end plays the streaming media to be played.
Therefore, when the streaming media corresponding to the streaming media request is not cached in the first streaming media server, the streaming media to be played can be obtained from other streaming media servers where the streaming media corresponding to the streaming media request is cached, so that the cascade scheduling between the streaming media servers can be realized.
Corresponding to the foregoing method embodiment, an embodiment of the present invention further provides a streaming media cascade scheduling apparatus, as shown in fig. 8, which is a schematic structural diagram of the streaming media cascade scheduling apparatus according to the embodiment of the present invention, where the streaming media cascade scheduling apparatus may be applied to a first streaming media server, and the streaming media cascade scheduling apparatus may include:
a first query module 810, configured to receive a streaming media request sent by a user playing end, and query, in a first process of a first streaming media server, whether a streaming media corresponding to the streaming media request exists, where the streaming media request carries identification information of the streaming media to be played, and the first process is a process allocated to the streaming media request by the first streaming media server;
a second query module 820, configured to query, in a pre-established correspondence between streaming media and a process, identification information of a second process corresponding to identification information of streaming media to be played when the streaming media corresponding to the streaming media request is not queried in a first process of the first streaming media server, where the pre-established correspondence between streaming media and the process is established in a stream pushing process, and in the pre-established correspondence between streaming media and the process, a correspondence exists between the identification information of the streaming media and the identification information of the process;
the first sending module 830 is configured to obtain the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and send the obtained streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
When a streaming media request sent by a user playing end is received, a first process of a first streaming media server may first query whether there is streaming media corresponding to the streaming media request, if not, the first process may query, according to a pre-established correspondence between the streaming media and the process, identification information of a second process corresponding to the identification information of the streaming media to be played, and after querying the identification information of the second process, may obtain the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and finally, may send the obtained streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end. Therefore, when the streaming media to be played is not cached in the first process, the streaming media to be played is obtained from the second process in which the streaming media to be played is cached, so that cascade query can be performed among the processes; when the streaming media to be played is obtained, the streaming media to be played can be sent to the user playing end to be played, so that feedback information which is not queried by the user playing end is prevented from being fed back when the streaming media to be played is not queried in the first process, and accuracy of the feedback information is improved.
In some examples, the streaming media concatenation scheduling apparatus may further include:
the first recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the corresponding relation establishing module is used for establishing the corresponding relation between the streaming media and the process in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
In some examples, the streaming media concatenation scheduling apparatus may further include:
the second recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the second sending module is used for sending the identification information of each process and the identification information of the streaming media cached by each process to the scheduling server, so that the scheduling server establishes the corresponding relation between the streaming media and the processes in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
In some examples, the second query module is specifically configured to:
sending an inquiry request carrying identification information of the streaming media to be played to a scheduling server, so that the scheduling server searches identification information of a second process corresponding to the identification information of the streaming media to be played in a corresponding relation between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process;
the first sending module 830 is specifically configured to:
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
In some examples, the correspondence establishing module is specifically configured to:
the identification information of each process is taken as an element value, the identification information of the streaming media cached by the process is taken as a field, and a key value table containing the identification information of each process and the identification information of the streaming media cached by the process is established in advance;
the second query module 820 is specifically configured to:
and inquiring identification information of the second process corresponding to the identification information of the streaming media to be played in a pre-established key value table.
In some examples, the streaming media concatenation scheduling apparatus may further include:
and the updating module is used for periodically updating the pre-established key value table.
In some examples, the streaming media concatenation scheduling apparatus may further include:
the third query module is used for querying identification information of a second process corresponding to the identification information of the streaming media to be played and identification information of a second streaming media server corresponding to the second process in the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established in the scheduling server when the identification information of the second process is not queried, wherein the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established is established by the scheduling server in the stream pushing process, and in the corresponding relationship of the streaming media, the process and the streaming media server which is pre-established, the identification information of the streaming media and the identification information of the process have a corresponding relationship, and the identification information of the process and the identification information of the streaming media server have a corresponding relationship;
a first transmitting module 830, comprising:
the sending submodule is used for sending an acquisition request carrying the identification information of the second process to the second streaming media server based on the identification information of the second streaming media server;
and the obtaining submodule is used for obtaining the to-be-played streaming media which is searched by the second streaming media server from the second process and corresponds to the identification information of the to-be-played streaming media based on the identification information of the second process, and sending the to-be-played streaming media which corresponds to the identification information of the to-be-played streaming media to the user playing end.
In some examples, the streaming media concatenation scheduling apparatus may further include:
and the third sending module is used for sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process to the scheduling server, so that the scheduling server establishes the corresponding relation among the streaming media, the processes and the streaming media server in advance according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
In some examples, the streaming media concatenation scheduling apparatus may further include:
and the first deleting module is used for deleting the corresponding relation between the pre-established streaming media and the process after the stream pushing process is finished.
In some examples, the streaming media concatenation scheduling apparatus may further include:
and the second deleting module is used for indicating the scheduling server to delete the corresponding relation of the pre-established streaming media, the process and the streaming media server after the stream pushing process is finished.
An electronic device according to an embodiment of the present invention is further provided, as shown in fig. 9, which is a schematic structural diagram of an electronic device according to an embodiment of the present invention, where the electronic device may include a processor 901 and a machine-readable storage medium 902, where the machine-readable storage medium 902 stores machine-executable instructions that can be executed by the processor 901, and the processor 901 is caused by the machine-executable instructions to: the steps of any streaming media concatenation scheduling method described above may be executed, for example, as follows:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed for the streaming media request by the first streaming media server;
if not, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relationship between the streaming media and the process, wherein the pre-established corresponding relationship between the streaming media and the process is established in the stream pushing process, and the corresponding relationship between the identification information of the streaming media and the identification information of the process is established in the pre-established corresponding relationship between the streaming media and the process;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
The machine-readable storage medium 902 may include a Random Access Memory (RAM) and may also include a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor 901 may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but also Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components.
An embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the method performs any of the steps of the streaming media cascade scheduling method, for example, the method may perform the following steps:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed for the streaming media request by the first streaming media server;
if not, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relationship between the streaming media and the process, wherein the pre-established corresponding relationship between the streaming media and the process is established in the stream pushing process, and the corresponding relationship between the identification information of the streaming media and the identification information of the process is established in the pre-established corresponding relationship between the streaming media and the process;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
An embodiment of the present invention further provides a computer program product including instructions, which when run on a computer, causes the computer to perform any of the steps of the streaming media cascade scheduling method described above, for example, the following steps may be performed:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed for the streaming media request by the first streaming media server;
if not, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relationship between the streaming media and the process, wherein the pre-established corresponding relationship between the streaming media and the process is established in the stream pushing process, and the corresponding relationship between the identification information of the streaming media and the identification information of the process is established in the pre-established corresponding relationship between the streaming media and the process;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
An embodiment of the present invention further provides a computer program, which when running on a computer, causes the computer to execute any of the steps of the streaming media cascade scheduling method, for example, the following steps may be executed:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of a first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed for the streaming media request by the first streaming media server;
if not, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relationship between the streaming media and the process, wherein the pre-established corresponding relationship between the streaming media and the process is established in the stream pushing process, and the corresponding relationship between the identification information of the streaming media and the identification information of the process is established in the pre-established corresponding relationship between the streaming media and the process;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to a user playing end.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the system embodiment, since it is substantially similar to the method embodiment, the description is simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (16)

1. A streaming media cascade scheduling method is applied to a first streaming media server, and comprises the following steps:
receiving a streaming media request sent by a user playing end, and inquiring whether streaming media corresponding to the streaming media request exist in a first process of the first streaming media server, wherein the streaming media request carries identification information of the streaming media to be played, and the first process is a process distributed by the first streaming media server for the streaming media request;
under the condition that the streaming media corresponding to the streaming media request is not inquired in the first process of the first streaming media server, inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in a pre-established corresponding relation between the streaming media and the process;
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
2. The method according to claim 1, wherein before the receiving of the streaming media request sent by the user playing end and the querying of the first process of the first streaming media server as to whether the streaming media corresponding to the streaming media request exists, the method further comprises:
recording identification information of each process of the first streaming media server and identification information of the streaming media cached by each process in the stream pushing process;
and according to the identification information of each process and the identification information of the streaming media cached by the process, establishing the corresponding relation between the streaming media and the process in advance.
3. The method according to claim 1, wherein before the receiving of the streaming media request sent by the user playing end and the querying of the first process of the first streaming media server as to whether the streaming media corresponding to the streaming media request exists, the method further comprises:
recording identification information of each process of the first streaming media server and identification information of the streaming media cached by each process in the stream pushing process;
and sending the identification information of each process and the identification information of the streaming media cached by each process to a scheduling server, so that the scheduling server establishes a corresponding relation between the streaming media and the processes in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
4. The method according to claim 3, wherein the querying, in the pre-established correspondence between the streaming media and the process, the identification information of the second process corresponding to the identification information of the streaming media to be played comprises:
sending a query request carrying the identification information of the streaming media to be played to the scheduling server, so that the scheduling server searches identification information of a second process corresponding to the identification information of the streaming media to be played in a corresponding relationship between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process;
the acquiring, from the second process, the streaming media to be played corresponding to the identification information of the streaming media to be played, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end, includes:
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from a second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
5. The method according to claim 2 or 3, wherein the pre-establishing a correspondence between the streaming media and the process according to the identification information of each process and the identification information of the streaming media cached by the process comprises:
the identification information of each process is taken as an element value, the identification information of the streaming media cached by the process is taken as a field, and a key value table containing the identification information of each process and the identification information of the streaming media cached by the process is established in advance;
the querying, in the pre-established correspondence between the streaming media and the process, the identification information of the second process corresponding to the identification information of the streaming media to be played includes:
and inquiring identification information of a second process corresponding to the identification information of the streaming media to be played in the pre-established key value table.
6. The method of claim 5, further comprising:
periodically updating the pre-established key value table.
7. The method according to claim 2, wherein after querying identification information of a second process corresponding to the identification information of the to-be-played streaming media in the pre-established correspondence between the streaming media and the processes, the method further comprises:
when the identification information of the second process is not inquired, inquiring the identification information of the second process corresponding to the identification information of the streaming media to be played and the identification information of a second streaming media server corresponding to the second process in the corresponding relation of the streaming media, the process and the streaming media server which is pre-established by the scheduling server in the stream pushing process, wherein in the corresponding relation of the streaming media, the process and the streaming media server which is pre-established, the identification information of the streaming media and the identification information of the process have a corresponding relation, and the identification information of the process and the identification information of the streaming media server have a corresponding relation;
the acquiring, from the second process, the streaming media to be played corresponding to the identification information of the streaming media to be played, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end, includes:
sending an acquisition request carrying the identification information of the second process to the second streaming media server based on the identification information of the second streaming media server;
and acquiring the streaming media to be played, which is searched by the second streaming media server from the second process and corresponds to the identification information of the streaming media to be played, based on the identification information of the second process, and sending the acquired streaming media to be played, which corresponds to the identification information of the streaming media to be played, to the user playing end.
8. The method according to claim 7, wherein before the receiving of the streaming media request sent by the user playing end and the querying of the first process of the first streaming media server as to whether the streaming media corresponding to the streaming media request exists, the method further comprises:
and sending the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process to a scheduling server, so that the scheduling server establishes the corresponding relation among the streaming media, the processes and the streaming media server in advance according to the identification information of the first streaming media server, the identification information of each process in the first streaming media server and the identification information of the streaming media cached by each process.
9. The method according to claim 2 or 3, wherein after the correspondence between the streaming media and the process is established in advance according to the identification information of each process and the identification information of the streaming media cached by the process, the method further comprises:
and after the stream pushing process is finished, deleting the corresponding relation between the pre-established stream media and the process.
10. The method of claim 8, further comprising:
and after the stream pushing process is finished, indicating the scheduling server to delete the corresponding relation of the pre-established stream media, the process and the stream media server.
11. A streaming media cascade scheduling apparatus, applied to a first streaming media server, the apparatus comprising:
a first query module, configured to receive a streaming media request sent by a user playing end, and query, in a first process of the first streaming media server, whether a streaming media corresponding to the streaming media request exists, where the streaming media request carries identification information of a streaming media to be played, and the first process is a process allocated to the streaming media request by the first streaming media server;
a second query module, configured to query, in a pre-established correspondence between streaming media and processes, identification information of a second process corresponding to the identification information of the streaming media to be played, when the streaming media corresponding to the streaming media request is not queried in the first process of the first streaming media server;
and the first sending module is used for acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from the second process, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
12. The apparatus of claim 11, further comprising:
the first recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the corresponding relation establishing module is used for establishing the corresponding relation between the streaming media and the process in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
13. The apparatus of claim 11, further comprising:
the second recording module is used for recording the identification information of each process of the first streaming media server and the identification information of the streaming media cached by each process in the stream pushing process;
and the second sending module is used for sending the identification information of each process and the identification information of the streaming media cached by each process to a scheduling server, so that the scheduling server establishes the corresponding relationship between the streaming media and the processes in advance according to the identification information of each process and the identification information of the streaming media cached by the process.
14. The apparatus of claim 13, wherein the second query module is specifically configured to:
sending a query request carrying the identification information of the streaming media to be played to the scheduling server, so that the scheduling server searches identification information of a second process corresponding to the identification information of the streaming media to be played in a corresponding relationship between the streaming media and the processes which is established in advance locally, and feeds back the identification information of the second process;
the first sending module is specifically configured to:
and acquiring the streaming media to be played corresponding to the identification information of the streaming media to be played from a second process corresponding to the identification information of the second process sent by the scheduling server, and sending the acquired streaming media to be played corresponding to the identification information of the streaming media to be played to the user playing end.
15. An electronic device comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to: carrying out the process steps of any one of claims 1 to 10.
16. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 10.
CN201910253120.5A 2019-03-29 2019-03-29 Streaming media cascade scheduling method and device, electronic equipment and storage medium Pending CN111756681A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910253120.5A CN111756681A (en) 2019-03-29 2019-03-29 Streaming media cascade scheduling method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910253120.5A CN111756681A (en) 2019-03-29 2019-03-29 Streaming media cascade scheduling method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN111756681A true CN111756681A (en) 2020-10-09

Family

ID=72672570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910253120.5A Pending CN111756681A (en) 2019-03-29 2019-03-29 Streaming media cascade scheduling method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN111756681A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018201A (en) * 2007-01-17 2007-08-15 黄从来 A parallel expansion method of the P2P stream media live broadcast technology
US20110246608A1 (en) * 2008-10-27 2011-10-06 China Mobile Communications Corporation System, method and device for delivering streaming media
US20130148671A1 (en) * 2011-12-09 2013-06-13 Michael Thomas DIPASQUALE Method of transporting data from sending node to destination node
CN105516238A (en) * 2015-11-23 2016-04-20 网易(杭州)网络有限公司 Data request method and device, node server, and CDN system
CN106850581A (en) * 2017-01-04 2017-06-13 网宿科技股份有限公司 The distribution backup method of interactive live broadcast stream media data, system and server
CN107302525A (en) * 2017-06-02 2017-10-27 上海帝联信息科技股份有限公司 Draw method of flow control and device, readable storage medium storing program for executing, streaming media server
CN107770131A (en) * 2016-08-17 2018-03-06 创盛视联数码科技(北京)有限公司 Stream media recording method based on nginx servers

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101018201A (en) * 2007-01-17 2007-08-15 黄从来 A parallel expansion method of the P2P stream media live broadcast technology
US20110246608A1 (en) * 2008-10-27 2011-10-06 China Mobile Communications Corporation System, method and device for delivering streaming media
US20130148671A1 (en) * 2011-12-09 2013-06-13 Michael Thomas DIPASQUALE Method of transporting data from sending node to destination node
CN105516238A (en) * 2015-11-23 2016-04-20 网易(杭州)网络有限公司 Data request method and device, node server, and CDN system
CN107770131A (en) * 2016-08-17 2018-03-06 创盛视联数码科技(北京)有限公司 Stream media recording method based on nginx servers
CN106850581A (en) * 2017-01-04 2017-06-13 网宿科技股份有限公司 The distribution backup method of interactive live broadcast stream media data, system and server
CN107302525A (en) * 2017-06-02 2017-10-27 上海帝联信息科技股份有限公司 Draw method of flow control and device, readable storage medium storing program for executing, streaming media server

Similar Documents

Publication Publication Date Title
US11405685B2 (en) Efficient insertion of media items in media streams
CN103379362B (en) VOD method and system
US9621620B2 (en) Apparatus and method for providing content with a distributed architecture, and system for providing content with the said apparatus
CN104053067B (en) A kind of player method of programme televised live, terminal and server
US10623823B2 (en) Method, system, and website server for playing website video
US20170195447A1 (en) Methods and apparatus for serving content to customer devices based on dynamic content popularity
US20050055718A1 (en) Peer-to-peer architecture for sharing video on demand content
CN103442271B (en) A kind of method that program classification for TV box is searched for
KR101773275B1 (en) Media delivery service protocol to support large numbers of client with error failover processes
CN102238419A (en) Method and apparatus for playing live content
KR100862354B1 (en) Method for asynchronous multimedia retrieval
KR20140026351A (en) Method and apparatus for updating a database in a receiving device
CN101202882B (en) Method, system for transmitting medium resource and set-top box
US20200359080A1 (en) Content-Modification System with Issue Detection and Responsive Action Feature
US20220201347A1 (en) Content-Modification System with System Resource Request Feature
CN106658054A (en) Video advertisement request link optimization method and apparatus
CN114465989A (en) Streaming media data processing method, server, electronic device and readable storage medium
CN107911712B (en) Data buffering method and electronic equipment
JP2007518335A (en) How to search program content
CN102957972A (en) Video on demand method and system thereof
CN111756681A (en) Streaming media cascade scheduling method and device, electronic equipment and storage medium
US20200389687A1 (en) Content-Modification System with Content-Presentation Device Grouping Feature
US20230010310A1 (en) Content modification system with viewer behavior-based content delivery selection feature
CN101500108A (en) Multimedia archive sharing method and system
CN110753268B (en) Page card data generation method and device and electronic equipment

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201009

RJ01 Rejection of invention patent application after publication