CN101729357A - 媒体文件存储处理与业务处理方法及装置、服务器集群 - Google Patents
媒体文件存储处理与业务处理方法及装置、服务器集群 Download PDFInfo
- Publication number
- CN101729357A CN101729357A CN200810170226.0A CN200810170226A CN101729357A CN 101729357 A CN101729357 A CN 101729357A CN 200810170226 A CN200810170226 A CN 200810170226A CN 101729357 A CN101729357 A CN 101729357A
- Authority
- CN
- China
- Prior art keywords
- media file
- server
- temperature
- request
- son stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000005540 biological transmission Effects 0.000 claims description 21
- 238000003672 processing method Methods 0.000 claims description 14
- 230000015572 biosynthetic process Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 8
- 230000003111 delayed effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 230000007423 decrease Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 244000144992 flock Species 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及媒体文件存储处理与业务处理方法及装置、服务器集群,其中,媒体文件存储处理方法包括:根据媒体文件的热度确定该媒体文件的热度级别;根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M;将所述媒体文件编码成M个占用带宽相同的子流;按照服务器负载均衡原则,将所述M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上。本发明实施例可以在服务器集群中服务器之间实现负荷分担与负载均衡,并使各服务器的服务能力得到有效利用。
Description
技术领域
本发明涉及负载均衡技术,尤其是一种媒体文件存储处理与业务处理方法及装置、服务器集群。
背景技术
网络电视(Internet Protocol Television,以下简称:IPTV)是以家用电视机、PC或其它电子类设备为显示终端,通过公众互联网或专用IP网络,提供包括电视节目以及基于电视节目的其它增值业务在内的内容丰富的视听类宽带IP多媒体信息业务,例如:直播电视、点播电视。
在IPTV业务系统中,由服务器负责存储影片等媒体文件。当服务器接收到客户端发送的媒体文件请求时,向客户端提供其请求的媒体文件。每台服务器的可服务能力是有限的。例如:一台服务器可以同时接入500~1000个用户,或者可同时产生500M的带宽等。当服务器的可服务能力被占满时,就无法再提供更多的服务。例如:某台服务器可以同时接入500个用户,在已经有500个用户接入后,第501个用户的服务请求就会被拒绝。
服务器集群技术可以将若干个服务器聚集在一起,像一个服务器一样提供服务。在聚集在一起的服务器集群中,由一个或几个服务器作为调度服务器对服务器集群中的服务器进行调度,选择合适的服务器处理媒体文件请求,为用户服务。例如:一个服务器集群中包括20个服务器,每个服务器可同时接入500个用户,则该服务器集群一共可同时接入10000个用户。每个用户接入时,其请求的媒体文件可能不同。如果该集群中的20个服务器分别存储影片A、B、C、...、T,则调度服务器会调度存储相应影片的服务器来为用户提供其请求的影片。此时,由于不同媒体文件的热度(即:受用户欢迎的程度)不同,导致存储热度较高的媒体文件的服务器被用户访问频率较大,负载较大,而一些存储热度较低的媒体文件的服务器被用户访问频率较小,负载较小,这就可能出现存储热度较高的媒体文件的服务器的能力无法满足用户的服务需求而无法为更多用户提供服务,而存储热度较低的媒体文件的服务器的能力得不到充分利用。为了解决这个问题,可以在服务器之间冗余存储一些热度较高的媒体文件,例如:在所有服务器上都存储热度最高的影片。这样,当一个服务器的服务能力达到极限时,用户可以到其它的服务器获得请求的媒体文件。另外,服务器之间的冗余存储也实现了媒体文件的备份,当某个服务器发生故障时,冗余存储服务器可以作为备份服务器接替该发生故障的服务器向用户提供服务。通常情况下,服务器的负载较小时,故障率也较小,反之,负载较高时,故障率较高。因此,为了保证服务器的稳定性,就需要在冗余存储的服务器之间进行负荷分担调度,实现冗余存储的服务器之间的负载均衡。
但是,在服务器集群中的冗余存储时,又必然减少整个服务器集群可提供的媒体文件的种类。因此,服务器集群的冗余存储与服务能力的利用效率是一对矛盾的因素。当存储的冗余度小时,服务器集群的服务能力无法得到有效利用。而当服务器集群的服务能力得到有效利用时,存储的冗余度又较大。因此,在服务器集群中,如何实现冗余存储与服务能力利用效率之间的平衡,是一个亟待解决的问题。
其中一种现有技术中,现有IPTV系统中的各个边缘服务器(Edge Server,以下简称:ES)在IPTV系统的层面上组织成服务器集群提供媒体文件服务。每个ES服务一定区域的用户。当用户请求媒体文件时,选择用户所在区域的ES为用户提供服务。用户所在区域的ES本区域用户的媒体文件请求,选择用户感兴趣的媒体文件存储在本地,并提供给用户。该服务器集群中的各个ES之间没有共享,在不同时刻,不同区域的用户可能不平衡,这就导致某个区域的ES负荷较重,某个区域的ES负荷较轻,无法实现ES之间的负荷分担与负载均衡。另外,各区域的ES都需要存储本区域用户需要的所有媒体文件,如果对一些热度较低的媒体文件感兴趣的少数用户分散在不同区域,就会导致不同区域的ES为了满足本域内少数用户的请求都需要保存相应媒体文件,这就必然导致一些不必要的冗余存储,从而减少整个服务器集群可提供的媒体文件的种类。
在另一种现有技术中,将ES按照点对点(Peer-to-Peer,以下简称:P2P)的方式组织在一起形成P2P ES集群,在各ES之间实现资源共享。通过在P2PES集群中的P2P查询,可以得到所有ES中媒体文件的分布情况。该P2P服务器集群中,可以由本区域ES或其它区域的ES向本区域的用户提供服务。由于P2PES集群提供了媒体文件的查询方法,与上一种现有技术相比,实现了ES之间的内容共享,并且,在P2P ES集群中采用了全分布式结构,避免了单点故障对整个集群系统的影响,增加了系统的鲁棒性。但是,在P2P ES集群中仍然无法实现ES之间的负荷分担与负载均衡。例如:如果某热度较高的影片仅仅存储于其中一个ES上,则所有对该影片的请求依然会集中到该ES,从而造成热点效应。
在实现本发明的过程中,发明人发现:现有技术中,在基于P2P的服务器集群(以下简称为P2P服务器集群)中,虽然实现了对服务器的内部调度,可以选择合适的服务器为用户服务。但是,对于如何在服务器之间进行冗余存储,以在服务器之间实现负荷分担与负载均衡,并使各服务器的服务能力得到有效利用,在P2P服务器集群中尚无法实现。
发明内容
本发明实施例提供的一种媒体文件存储处理方法、装置及服务器集群,能够实现服务器集群中服务器之间实现负荷分担与负载均衡,并使各服务器的服务能力得到有效利用。
本发明实施例提供的一种媒体文件存储处理方法,包括:
根据媒体文件的热度确定该媒体文件的热度级别;
根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M;
将所述媒体文件编码成M个占用带宽相同的子流;
按照服务器负载均衡原则,将所述M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上。
本发明实施例提供的一种媒体文件存储处理装置,包括:
热度识别模块,用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别;
确定模块,用于根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M;
编码单元,用于将所述媒体文件编码成M个占用带宽相同的子流;
存储分配模块,用于按照服务器负载均衡原则,将所述M个占用带宽相同的子流分别发送给服务器集群中的M个服务器存储。
本发明实施例提供的一种服务器集群,包括:
媒体文件存储处理装置,用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别,根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M,并将所述媒体文件编码成M个占用带宽相同的子流,以及按照服务器负载均衡原则,将M个占用带宽相同的子流分别发送给M个服务器存储;
L个服务器,该L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储所述媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将存储的、所述媒体文件获取请求中文件标识对应的媒体文件的子流,发送给所述终端,M为大于1的整数,且M小于或等于L。
本发明实施例提供的另一种服务器集群,包括L个服务器,该L个服务器中的一个服务器用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别,根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M,并将所述媒体文件编码成M个占用带宽相同的子流,以及按照服务器负载均衡原则,将M个占用带宽相同的子流分别存储在所述L个服务器中的M个服务器上,M为大于1的整数,且M小于或等于L;
所述L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储所述媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将存储的、所述媒体文件获取请求中文件标识对应的媒体文件的子流,发送给所述终端。
本发明实施例提供的一种媒体文件业务处理方法,包括:
接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
服务器集群中的M个服务器,根据所述终端用户标识,分别将各自存储的所述媒体文件的子流发送给所述终端,其中,所述媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在所述M个服务器上,M为大于1的整数。
本发明实施例提供的一种媒体文件业务处理装置,包括:
接收模块,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
查询模块,用于根据所述媒体文件标识,查询服务器集群中存储所述媒体文件的M个子流的M个服务器的地址;获取模块,用于根据所述M个服务器的地址,分别从所述M个服务器中获取所述媒体文件的N个子流,其中,N为大于1的整数且N小于或等于M;
发送模块,用于根据所述终端用户标识,将分别从所述M个服务器上的获取的且和所述媒体文件标识对应的媒体文件的N个子流,发送给所述终端;
其中,所述媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在所述M个服务器上,M为大于1的整数。
本发明实施例提供的又一种服务器集群,包括:
L个服务器,该L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流,M为大于1的整数,且M小于或等于L;
媒体文件业务处理装置,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识,以及根据所述终端用户标识,将分别存储在服务器集群中M个服务器上的、所述媒体文件标识对应的媒体文件的子流,发送给所述终端。
基于本发明上述实施例提供的媒体文件存储处理与业务处理方法与装置、服务器集群,可以根据媒体文件的热度,按照服务器集群中服务器之间负载均衡的原则,将媒体文件编码成M个占用带宽相同的子流并分别存储在服务器集群中的M个服务器上。当服务器集群接收到终端发送的媒体文件获取请求时,分别将该M个服务器上存储的媒体文件的M个子流发送给终端,终端便可以根据接收到的M个子流中的多个子流还原出媒体文件,从而实现了服务器集群中服务器之间的负荷分担与负载均衡,使各服务器的服务能力得到有效利用。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明媒体文件存储处理方法一个实施例的流程图;
图2为本发明媒体文件存储处理装置一个实施例的结构示意图;
图3为本发明媒体文件业务处理方法一个实施例的流程图;
图4为本发明媒体文件业务处理方法另一个实施例的流程图;
图5为本发明媒体文件业务处理方法又一个实施例的流程图;
图6为本发明媒体文件业务处理装置一个实施例的结构示意图;
图7为本发明服务器集群一个实施例的结构示意图;
图8为本发明服务器集群另一个实施例的结构示意图;
图9为本发明服务器集群又一个实施例的结构示意图;
图10为本发明服务器集群再一个实施例的结构示意图。
具体实施方式
本发明实施例提供的一种媒体文件存储处理方法,可以根据媒体文件的热度,将媒体文件编码成M个占用带宽相同的子流,并按照服务器负载均衡原则,将该M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上。具体地,在本发明的以下各实施例中,可以采用实用网络编码(Practical network coding)方法对媒体文件进行编码。由于媒体文件按照热度,采用实用网络编码方法编码成M个占用带宽相同的子流,并按照服务器集群中服务器之间负载均衡的原则,分别存储在服务器集群中的M个服务器上,当服务器集群接收到终端发送的媒体文件获取请求时,可以分别将该M个服务器上存储的媒体文件的M个子流发送给终端,从而实现了服务器集群中服务器之间的负荷分担与负载均衡,使各服务器的服务能力得到有效利用。
如图1所示,为本发明媒体文件存储处理方法一个实施例的流程图,其包括以下步骤:
步骤101,根据媒体文件的热度确定该媒体文件的热度级别。
具体地,可以通过统计的该媒体文件在某段时间内被用户终端访问的次数来确定媒体文件的热度,进一步根据预先设置的热度级别包括的热度范围来确定该媒体文件的热度级别。
步骤102,根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定媒体文件的热度级别对应的服务器数量M。
作为本发明的一个具体实施例,可以规定热度按照第一热度级别、第二热度级别、第三热度级别、......等热度级别依次降低,即:热度级别越高,热度越低。存储热度最高的第一热度级别的媒体文件的服务器数量为构成服务器集群的服务器的数量L,L为大于或等于M的整数;存储第一热度级别以外其余热度级别的媒体文件的服务器数量为P,P为小于L的整数。具体地,P可以取L/Q或L/2Q-1中的整数值,Q为热度级别。
由于热度级别越高的媒体文件占用的服务器资源越多,将热度级别越高的媒体文件编码成越多的子流并存储在各服务器上,可以使服务器集群中的各服务器之间实现较好的负荷分担与负载均衡效果,而将将热度级别越低的媒体文件编码成越少的子流并存储在各服务器上,可以减少服务器集群中冗余存储带来的服务器资源的浪费,使各服务器的服务能力得到充分利用。
步骤103,将媒体文件采用实用网络编码方法编码成M个占用带宽相同的子流。
步骤104,按照服务器负载均衡原则,将M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上。
在图1所示实施例的步骤104之后,可以记录存储媒体文件的子流的M个服务器的地址,以便服务器集群接收到用户终端发送的媒体文件获取请求后,查询存储该媒体文件各子流的服务器的地址,从相应服务器中获取该媒体文件的子流。具体地,可以以媒体文件标识与服务器的地址之间的对应关系的方式来记录存储媒体文件的子流的M个服务器的地址,其可以通过如下方式实现:建立媒体文件标识与服务器的地址之间的对应关系信息,并将该对应关系信息分别存储在服务器集群中的各个服务器上;建立媒体文件标识与服务器的地址之间的对应关系信息,并将该对应关系信息分为多个部分,分别存储在服务器集群中的多个不同服务器上;建立媒体文件标识与服务器的地址之间的对应关系信息,并将该对应关系信息全部存储在服务器集群中的一个或多个特定服务器上,或者分散存储在多个特定服务器上。
由于不同的媒体文件有不同的热度。根据热度的不同,可以对媒体文件的热度进行分级,将不同的媒体文件划分为多个不同的热度级别,例如:第一热度级别、第二热度级别与第三热度级别共三个热度级别。可以设定第一热度级别的媒体文件热度最高,第二热度级别的媒体文件热度次之,以此类推。假设一个服务器集群中有L个服务器,L为大于1的整数。以下以将媒体文件分为三个热度级别为例,说明对媒体文件进行编码,并按照服务器负载均衡原则将编码的M个子流分别存储在M个服务器上的实施例,对于其它热度级别可参考处理。
首先,对媒体文件划分为不同的热度级别。具体地,可以根据各媒体文件在某段时间内被用户访问的频率来确定各媒体文件的热度级别。例如:频率大于或等于100的为第一热度级别,频率介于50与100之间的为第二热度级别,频率小于或等于50的为第三热度级别。另外,也可以根据各媒体文件在某段时间内被用户访问的频率及预设的各热度级别包含的媒体文件数量,来划分媒体文件的热度级别,其中各热度级别包含的媒体文件数量可以根据实际情况需要进行更新。例如:预设第一热度级别包含10个媒体文件,第二热度级别包含20个媒体文件,其余媒体文件属于第三热度级别,则在某段时间内,按照被用户访问频率从高到低排序的前10个媒体文件属于第一热度级别,按照被用户访问频率从高到低排序的第11至第30个媒体文件属于第二热度级别,其余媒体文件属于第三热度级别。对媒体文件划分热度级别后,假设第一热度级别的媒体文件有X个,第二热度级别的媒体文件有Y个,第三热度级别的媒体文件有Z个。
对于第一热度级别的X个媒体文件中的每一个媒体文件,都编码成L个占用带宽相同的子流并分别存储在服务器集群中的L个服务器上。按照实用网络编码原理,终端只需要从这L个服务器中获取同一个媒体文件的若干个子流,就可以通过对该子流的编码、组合,还原出媒体文件。这样,即使服务器集群中的服务器发生宕机,只要不是大面积宕机,例如:百分之八十以上的服务器宕机,用户终端就可以获得同一媒体文件的足够多的子流,从而还原媒体文件。
由于服务器集群中各个服务器上都存储了第一热度级别的媒体文件的子流,当终端用户请求获取该媒体文件时,可以从服务器集群中的各个服务器分别获取该媒体文件的一个子流。由于每个子流占用的服务器带宽均为该媒体文件所占带宽的1/L,这样,每个服务器支持一个媒体文件获取请求所消耗的带宽只占该媒体文件传输所需带宽的1/L,L个服务器共同提供完整的媒体文件传输带宽,对于每个媒体文件获取请求,服务器集群中各服务器之间实现了负荷分担与负载均衡。从总体上看,服务器之间对第一级别热度的媒体文件获取请求始终是负荷分担的,实现了服务器之间的负载均衡。
对于第二热度级别的Y个媒体文件中的每一个媒体文件,若服务器集群中服务器的数量为偶数,即:L为偶数,都编码成L/2个占用带宽相同的子流,将每个媒体文件均匀存储在服务器集群中L/2个服务器上。具体地,可以将第二热度级别中第一个媒体文件的L/2个子流分别存储在服务器集群中的任意L/2个服务器上,将第二个媒体文件的L/2个子流分别存储在服务器集群中的另外L/2个服务器上;第三个媒体文件的L/2个子流存储在服务器集群中的任意L/2个服务器上,将第四个媒体文件的L/2个子流分别存储在服务器集群中的另外L/2个服务器上,以此类推。若服务器集群中服务器的数量为奇数,即:L为奇数,将第二热度级别的Y个媒体文件,间隔编码成(L-1)/2与(L+1)/2个占用带宽相同的子流,将每个媒体文件均匀存储在服务器集群中的(L-1)/2与(L+1)/2个个服务器上。具体地,可以将第二热度级别中第一个媒体文件的(L-1)/2个子流分别存储在服务器集群中的任意(L-1)/2个服务器上,将第二个媒体文件被编码成的(L+1)/2个子流分别存储在服务器集群中的另外(L+1)/2个服务器上;第三个媒体文件被编码成的(L-1)/2个子流存储在服务器集群中的任意(L-1)/2个服务器上,将第四个媒体文件被编码成的(L+1)/2个子流分别存储在服务器集群中的另外(L+1)/2个服务器上,以此类推。按照实用网络编码原理,终端只需要从这L个服务器中获取同一个媒体文件的若干个子流,就可以通过对该子流的编码、组合,还原出媒体文件。这样,即使服务器集群中的服务器发生宕机,只要不是大面积宕机,例如:存储同一媒体文件子流的百分之八十以上的服务器宕机,用户终端就可以获得同一媒体文件的足够多的子流,从而还原媒体文件。
针对第二热度级别的媒体文件获取请求,均有存储该媒体文件子流的L/2个或(L-1)/2个或(L+1)/2个服务器共同提供完整的媒体文件传输带宽,对于每个媒体文件获取请求,在服务器集群中L/2个或(L-1)/2个或(L+1)/2个服务器之间实现了负荷分担与负载均衡。从全局来看,由于同一热度级别中不同的媒体文件的热度是有差别的,例如:媒体文件A的热度较高,有1000个终端用户请求获取该媒体文件,则该1000个媒体文件获取请求由媒体文件A的子流所在的10个服务器提供,每个服务器需要服务100个媒体文件的带宽,媒体文件B的热度较低,有800个终端用户请求获取该媒体文件,则该800个媒体文件获取请求由媒体文件B所在的10个服务器提供,每个服务器需要服务80个媒体文件的带宽,另外,各媒体文件所占用的总体带宽也可能不同,这就使得存储同一热度级别的不同媒体文件子流的服务器之间出现负荷差异与负载差异。因此,在服务器上放置第二热度级别的媒体文件子流时,要考虑媒体文件的总热度与所需占用带宽,保证各服务器上的媒体文件的总热度及所需占用带宽近似相当,以达到较好的负荷分担与负载均衡效果。
相对于第一热度级别的媒体文件来说,因为只有L/2个或(L-1)/2个或(L+1)/2个服务器存储同一媒体文件的子流,可为终端用户提供同一媒体文件的服务器规模减少,部分服务器宕机对媒体文件质量的影响相对较大,因此,服务器集群系统的鲁棒性有所降低,但是,由于第二级别热度的媒体文件被访问频率相对较低,相对于第一热度级别的媒体文件来说,减少了冗余存储导致对服务器存储空间资源的浪费,使各服务器的服务能力得到有效利用。
对于第三热度级别的Z个媒体文件,查看服务器集群中各服务器的剩余能力,该剩余能力可以是服务器所支持的总带宽与存储各媒体文件子流所占用的总带宽只差,选择出剩余能力大于预设阈值的服务器或剩余能力最多的前若干个服务器,假设有R个。将三热度级别的Z个媒体文件分别编码成R个子流分别存储在R个服务器上。按照实用网络编码原理,终端只需要从这R个服务器中获取同一个媒体文件的若干个子流,就可以通过对该子流的编码、组合,还原出媒体文件。这样,即使服务器集群中的服务器发生宕机,只要不是大面积宕机,例如:存储同一媒体文件子流的百分之八十以上的服务器宕机,用户终端就可以获得同一媒体文件的足够多的子流,从而还原媒体文件。
显然,第三热度级别的媒体文件,相对于第一热度级别与第二热度级别的媒体文件来说,为终端用户提供服务的服务器数量无法得到保证,相应的,服务器之间的负荷分担与系统鲁棒性效果也相对较差。但是,由于第三热度级别的媒体文件的访问频率较低,对整体服务器之间的负荷分担的影响并不是很大。并且,由于第三级别热度的媒体文件被访问频率相对较低,相对于第一热度级别与第二热度级别的媒体文件来说,减少了冗余存储导致对服务器存储空间资源的浪费,使各服务器的服务能力得到有效利用。
如图2所示,为本发明媒体文件存储处理装置一个实施例的结构示意图。该实施例的媒体文件存储处理装置可用于实现本发明上述本发明媒体文件存储处理实施例的流程,其包括热度识别模块201、确定模块202、编码模块203与存储分配模块204。其中,热度识别单元201用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别。确定模块202用于根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定媒体文件的热度级别对应的服务器数量M。编码模块203用于将媒体文件编码成M个占用带宽相同的子流。存储分配模块204用于按照服务器负载均衡原则,将编码模块203编码成的M个占用带宽相同的子流分别发送给服务器集群中的M个服务器存储。
作为本发明的一个具体实施例,可以规定热度按照第一热度级别、第二热度级别、第三热度级别、......等热度级别依次降低,即:热度级别越高,热度越低。存储热度最高的第一热度级别的媒体文件的服务器数量为构成服务器集群的服务器的数量L,L为大于或等于M的整数;存储第一热度级别以外其余热度级别的媒体文件的服务器数量为P,P为小于L的整数。具体地,P可以取L/Q或L/2Q-1中的整数值,Q为热度级别。
进一步地,本发明实施例的媒体文件存储处理装置还可以包括记录模块205,用于记录存储媒体文件的子流的M个服务器的地址。如图2所示。
本发明实施例提供的一种服务器集群,可用于实现上述实施例的媒体文件存储处理方法,其包括媒体文件存储处理装置与L个服务器。其中,L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将各自存储的、媒体文件获取请求中文件标识对应的媒体文件的子流,发送给终端,M为大于1的整数,且M小于或等于L。媒体文件存储处理装置用于将同一媒体文件编码成M个占用带宽相同的子流,并按照服务器负载均衡原则,将M个占用带宽相同的子流分别发送给上述M个服务器存储。具体地,该媒体文件存储处理装置可以通过服务器集群中的媒体中心实现。
本发明实施例提供的另一种服务器集群,可用于实现上述实施例的媒体文件存储处理方法,其包括L个服务器,该L个服务器中的一个服务器用于将同一媒体文件编码成M个占用带宽相同的子流,并按照服务器负载均衡原则,将M个占用带宽相同的子流分别存储在该L个服务器中的M个服务器上,M为大于1的整数,且M小于或等于L。L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将各自存储的、媒体文件获取请求中文件标识对应的媒体文件的子流,发送给终端。
本发明实施例提供的一种媒体文件业务处理方法,包括:接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;服务器集群中的M个子流的M个服务器,根据终端用户标识,分别将各自存储的媒体文件的子流发送给终端。其中的媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在上述M个服务器上,M为大于1的整数。实用网络编码方法是一种网络媒体编码方法,该方法可以将一个媒体文件编码成为多个子流,任意接收到该多个子流中的部分子流,对该部分子流进行解码、组合,即可还原出原媒体文件进行播放,并且播放质量不受影响。作为一个实施例,本发明实施例中的服务器集群为按照P2P方式将多个服务器组织在一起形成的P2P服务器集群。
由于媒体文件被预先按照热度,编码成M个占用带宽相同的子流并按照服务器集群中服务器之间负载均衡的原则,分别存储在服务器集群中的M个服务器上,当服务器集群接收到终端发送的媒体文件获取请求时,分别将该M个服务器上存储的媒体文件的M个子流发送给终端,从而实现了服务器集群中服务器之间的负荷分担与负载均衡,使各服务器的服务能力得到有效利用。
如图3所示,为本发明媒体文件业务处理方法一个实施例的流程图,其包括以下步骤:
步骤301,服务器集群接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。媒体文件标识在一个服务器集群中唯一的标识一个媒体文件,其具体可以为媒体文件的名称、媒体文件的序号、媒体文件存储时间、媒体文件所需占用的带宽等信息中的一种或多种。
步骤302,服务器集群中接收到媒体文件获取请求的服务器,查询媒体文件获取请求中媒体文件标识对应的M个服务器的地址。其中的媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在上述M个服务器上,M为大于1的整数。
具体地,媒体文件标识与服务器的地址之间的对应关系信息可以分别存储在服务器集群中的各个服务器上,这样,接收到终端发送的媒体文件获取请求的服务器通过查询自身存储的媒体文件标识与服务器的地址之间的对应关系信息,便可以获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。另外,媒体文件标识与服务器的地址之间的对应关系信息也可以分为多个部分,分别存储在服务器集群中的多个不同服务器上,接收到终端发送的媒体文件获取请求的服务器,在自身中未存储媒体文件获取请求中媒体文件标识对应的服务器的地址时,与其它服务器进行信息交互,从其它服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。或者,媒体文件标识与服务器的地址之间的对应关系信息也可以全部存储在服务器集群中的一个或多个特定服务器上,或者分散存储在多个特定服务器上,接收到终端发送的媒体文件获取请求的服务器,从特定的服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。
步骤303,服务器集群中接收到媒体文件获取请求的服务器,根据M个服务器的地址,分别将媒体文件获取请求转发给相应的M个服务器。
如果接收到媒体文件获取请求的服务器是M个服务器之一,则不需要向自身转发媒体文件获取请求。
步骤304,接收到媒体文件获取请求的M个服务器,根据终端用户标识,将各自存储的媒体文件的子流发送给终端。
终端接收到服务器集群返回的媒体文件的多个子流后,可以对该多个子流进行解码、组合,即可还原出原媒体文件并进行播放。
如图4所示,为本发明媒体文件业务处理方法另一个实施例的流程图,其包括以下步骤:
步骤401,服务器集群接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。媒体文件标识在一个服务器集群中唯一的标识一个媒体文件,其具体可以为媒体文件的名称、媒体文件的序号、媒体文件存储时间、媒体文件所需占用的带宽等信息中的一种或多种。
步骤402,服务器集群中接收到媒体文件获取请求的服务器,查询媒体文件获取请求中媒体文件标识对应的M个服务器的地址。其中的媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在上述M个服务器上,M为大于1的整数。
具体地,媒体文件标识与服务器的地址之间的对应关系信息可以分别存储在服务器集群中的各个服务器上,这样,接收到终端发送的媒体文件获取请求的服务器通过查询自身存储的媒体文件标识与服务器的地址之间的对应关系信息,便可以获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。另外,媒体文件标识与服务器的地址之间的对应关系信息也可以分为多个部分,分别存储在服务器集群中的多个不同服务器上,接收到终端发送的媒体文件获取请求的服务器,在自身中未存储媒体文件获取请求中媒体文件标识对应的服务器的地址时,与其它服务器进行信息交互,从其它服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。或者,媒体文件标识与服务器的地址之间的对应关系信息也可以全部存储在服务器集群中的一个或多个特定服务器上,或者分散存储在多个特定服务器上,接收到终端发送的媒体文件获取请求的服务器,从特定的服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。
步骤403,服务器集群中接收到媒体文件获取请求的服务器,根据M个服务器的地址,分别从M个服务器中获取媒体文件的N个子流,为大于1的整数且N小于或等于M。
如果接收到媒体文件获取请求的服务器是M个服务器之一,则不需要向自身转发媒体文件获取请求。
步骤404,接收到媒体文件获取请求的服务器,根据终端用户标识,分别将获取到的媒体文件的N个子流分别发送给终端。
终端接收到服务器集群返回的媒体文件的多个子流后,可以对该多个子流进行解码、组合,即可还原出原媒体文件并进行播放。
如图5所示,为本发明媒体文件业务处理方法又一个实施例的流程图,其包括以下步骤:
步骤501,服务器集群接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。媒体文件标识在一个服务器集群中唯一的标识一个媒体文件,其具体可以为媒体文件的名称、媒体文件的序号、媒体文件存储时间、媒体文件所需占用的带宽等信息中的一种或多神。
步骤502,服务器集群中接收到媒体文件获取请求的服务器,查询媒体文件获取请求中媒体文件标识对应的M个服务器的地址。其中的媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在上述M个服务器上,M为大于1的整数。
具体地,媒体文件标识与服务器的地址之间的对应关系信息可以分别存储在服务器集群中的各个服务器上,这样,接收到终端发送的媒体文件获取请求的服务器通过查询自身存储的媒体文件标识与服务器的地址之间的对应关系信息,便可以获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。另外,媒体文件标识与服务器的地址之间的对应关系信息也可以分为多个部分,分别存储在服务器集群中的多个不同服务器上,接收到终端发送的媒体文件获取请求的服务器,在自身中未存储媒体文件获取请求中媒体文件标识对应的服务器的地址时,与其它服务器进行信息交互,从其它服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。或者,媒体文件标识与服务器的地址之间的对应关系信息也可以全部存储在服务器集群中的一个或多个特定服务器上,或者分散存储在多个特定服务器上,接收到终端发送的媒体文件获取请求的服务器,从特定的服务器获取媒体文件获取请求中媒体文件标识对应的M个服务器的地址。
步骤503,服务器集群中接收到媒体文件获取请求的服务器,根据M个服务器的地址,分别向相应的M个服务器发送指示信息,指示M个服务器分别各自存储的媒体文件的子流发送给终端,所述指示信息中携带有终端用户标识。
如果接收到媒体文件获取请求的服务器是M个服务器之一,则不需要向自身发送指示信息。
步骤504,接收到指示信息的M个服务器,根据终端用户标识,分别将各自存储的媒体文件的N个子流分别发送给终端。
终端接收到服务器集群返回的媒体文件的多个子流后,可以对该多个子流进行解码、组合,即可还原出原媒体文件并进行播放。
如图6所示,为本发明媒体文件业务处理装置一个实施例的结构示意图,该实施例的媒体文件业务处理装置可用于实现上述图4所示媒体文件业务处理方法实施例,其包括接收模块601、查询模块602、获取模块603与发送模块604。其中,接收模块601用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。查询模块602用于根据媒体文件标识与服务器的地址之间的对应关系信息,查询存储媒体文件获取请求中媒体文件标识对应的媒体文件的M个子流的M个服务器的地址。获取模块603用于根据查询模块602查询到的M个服务器的地址,分别从M个服务器中获取媒体文件的N个子流,为大于1的整数且N小于或等于M。发送模块604用于根据媒体文件获取请求中的终端用户标识,将获取模块603获取到的、媒体文件标识对应的媒体文件的N个子流,发送给终端。所述媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在M个服务器上,其中,M为大于1的整数。
本发明实施例提供的一种服务器集群,该实施例的服务器集群可用于实现本发明上述媒体文件业务处理方法实施例,其包括媒体文件业务处理装置1与L个服务器2。其中,L个服务器2中的M个服务器分别用于按照服务器负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流,M为大于1的整数,且M小于或等于L。媒体文件业务处理装置1用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识,以及根据终端用户标识,将分别存储在服务器集群中M个服务器2上的、媒体文件标识对应的媒体文件的子流,发送给终端。如图7所示,为本发明服务器集群一个实施例的结构示意图,该实施例的服务器集群包括5个服务器,即:L的取值为5。
如图8所示,为本发明服务器集群另一个实施例的结构示意图,与图7所示实施例的服务器集群相比,该实施例的服务器2包括存储模块701,媒体文件业务处理装置1包括接收模块601、查询模块602、获取模块603与与发送模块604。其中,存储模块701用于与服务器集群中其它服务器2之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流。接收模块601用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。查询模块602用于根据媒体文件标识与服务器的地址之间的对应关系信息,查询存储媒体文件获取请求中媒体文件标识对应的媒体文件的M个子流的M个服务器的地址。获取模块603用于根据查询模块602查询到的M个服务器的地址,分别从M个服务器中获取媒体文件的N个子流,其中,N为大于1的整数且N小于或等于M。发送模块604用于根据媒体文件获取请求中的终端用户标识,将获取模块603从M个服务器2上存储模块701中获取到的、媒体文件标识对应的媒体文件的N个子流,发送给终端。
如图9所示,为本发明服务器集群又一个实施例的结构示意图,该实施例的服务器集群可用于实现如图3所示媒体文件业务处理方法实施例的流程。与图7所示实施例的服务器集群相比,该实施例中的媒体文件业务处理装置1包括接收模块601、查询模块602与转发模块801,服务器2包括第一接收模块802、存储模块701与发送模块604。其中,接收模块601用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。查询模块602用于根据媒体文件标识与服务器的地址之间的对应关系信息,查询存储媒体文件获取请求中媒体文件标识对应的媒体文件的M个子流的M个服务器的地址。转发模块801用于根据查询模块602查询到的M个服务器的地址,分别将媒体文件获取请求转发给M个服务器2中的第一接收模块802。第一接收模块802用于接收转发模块801转发的媒体文件获取请求。存储模块701用于与服务器集群中其它服务器2之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流。发送模块604根据接收模块802接收到的媒体文件请求中携带的终端用户标识,将存储在该发送模块604所在服务器2上存储模块701中的、媒体文件标识对应的媒体文件的子流,发送给终端。图9仅示出了媒体文件业务处理装置1与一个服务器2连接关系,对于服务器集群中包括多个服务器的情况,媒体文件业务处理装置1与其它服务器2的连接关系相同。
如图10所示,为本发明服务器集群再一个实施例的结构示意图,该实施例的服务器集群可用于实现如图5所示媒体文件业务处理方法实施例的流程。与图7所示实施例的服务器集群相比,该实施例中的媒体文件业务处理装置1包括接收模块601、查询模块602与指示模块901,服务器2包括第一接收模块802、存储模块701与发送模块604。其中,接收模块601用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识。查询模块602用于根据媒体文件标识与服务器的地址之间的对应关系信息,查询存储媒体文件获取请求中媒体文件标识对应的媒体文件的M个子流的M个服务器的地址。指示模块901用于根据查询模块602查询到的M个服务器的地址,分别向M个服务器2中的第一接收模块802发送指示信息,该指示信息中包括终端用户标识与媒体文件标识,指示M个服务器2中的发送模块604根据终端用户标识,将存储在该发送模块604所在服务器2上的、媒体文件标识对应的媒体文件的子流,发送给终端。第一接收模块802用于接收转发模块801转发的媒体文件获取请求。存储模块701用于与服务器集群中其它服务器2之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流。发送模块604根据第一接收模块802接收到的指示信息中的终端用户标识,将存储在该发送模块604所在服务器2上存储模块701中的、媒体文件标识对应的媒体文件的子流,发送给终端。图10仅示出了媒体文件业务处理装置1与一个服务器2连接关系,对于服务器集群中包括多个服务器的情况,媒体文件业务处理装置1与其它服务器2的连接关系相同。
在本发明上述实施例的服务器集群中,L个服务器2中的L个存储模块701分别用于存储热度最高的第一热度级别的媒体文件被编码成的L个占用带宽相同的子流中的一个子流,L个服务器2按照负载均衡原则,其中的P个存储模块701还分别用于存储第一热度级别以外其余热度级别的媒体文件被编码成的P个占用带宽相同的子流中的一个子流。作为一个具体实施例,P取L/Q或L/2Q-1中的整数值,Q为热度级别。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例可以预先根据媒体文件的热度,按照服务器集群中服务器之间负载均衡的原则,将该媒体文件编码成M个占用带宽相同的子流并分别存储在服务器集群中的M个服务器上,当服务器集群接收到终端发送的媒体文件获取请求时,分别将该M个服务器上存储的媒体文件的M个子流发送给终端,终端便可以根据接收到的M个子流中的多个子流还原出媒体文件,从而实现了服务器集群中服务器之间的负荷分担与负载均衡,并考虑了服务器集群的存储冗余度与系统鲁棒性,使各服务器的服务能力得到有效利用。
最后所应说明的是:以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。
Claims (17)
1.一种媒体文件存储处理方法,其特征在于,包括:
根据媒体文件的热度确定该媒体文件的热度级别;
根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M;
将所述媒体文件编码成M个占用带宽相同的子流;
按照服务器负载均衡原则,将所述M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上。
2.根据权利要求1所述的媒体文件处理方法,其特征在于,所述热度级别与存储同一媒体文件的服务器数量之间的对应关系包括:
存储热度最高的第一热度级别的媒体文件的服务器数量为构成所述服务器集群的服务器的数量L,L为大于或等于M的整数;
存储第一热度级别以外其余热度级别的媒体文件的服务器数量为P,P为小于L的整数。
3.根据权利要求2所述的媒体文件处理方法,其特征在于,P取L/Q或L/2Q-1中的整数值,Q为热度级别。
4.根据权利要求1至3任意一项所述的媒体文件存储处理方法,其特征在于,将所述M个占用带宽相同的子流分别存储在服务器集群中的M个服务器上之后,还包括:
记录存储所述媒体文件的子流的M个服务器的地址。
5.一种媒体文件存储处理装置,其特征在于,包括:
热度识别模块,用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别;
确定模块,用于根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M;
编码单元,用于将所述媒体文件编码成M个占用带宽相同的子流;
存储分配模块,用于按照服务器负载均衡原则,将所述M个占用带宽相同的子流分别发送给服务器集群中的M个服务器存储。
6.根据权利要求5所述的媒体文件存储处理装置,其特征在于,热度最高的第一热度级别的媒体文件的服务器数量为构成所述服务器集群的服务器的数量L,L为大于或等于M的整数;
存储第一热度级别以外其余热度级别的媒体文件的服务器数量为P,P为小于L的整数。
7.根据权利要求5或6所述的媒体文件存储处理装置,其特征在于,还包括:
记录模块,用于记录存储所述媒体文件的子流的M个服务器的地址。
8.一种服务器集群,其特征在于,包括:
媒体文件存储处理装置,用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别,根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M,并将所述媒体文件编码成M个占用带宽相同的子流,以及按照服务器负载均衡原则,将M个占用带宽相同的子流分别发送给M个服务器存储;
L个服务器,该L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储所述媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将存储的、所述媒体文件获取请求中文件标识对应的媒体文件的子流,发送给所述终端,M为大于1的整数,且M小于或等于L。
9.一种服务器集群,其特征在于,包括L个服务器,该L个服务器中的一个服务器用于根据预先设置的热度与热度级别之间的对应关系信息,确定媒体文件的热度对应的热度级别,根据预先设置的热度级别与存储同一媒体文件的服务器数量之间的对应关系,确定所述媒体文件的热度级别对应的服务器数量M,并将所述媒体文件编码成M个占用带宽相同的子流,以及按照服务器负载均衡原则,将M个占用带宽相同的子流分别存储在所述L个服务器中的M个服务器上,M为大于1的整数,且M小于或等于L;
所述L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储所述媒体文件被编码成的M个占用带宽相同的子流中的一个子流,接收终端发送的媒体文件获取请求,以及将存储的、所述媒体文件获取请求中文件标识对应的媒体文件的子流,发送给所述终端。
10.一种媒体文件业务处理方法,其特征在于,包括:
接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
服务器集群中的M个服务器,根据所述终端用户标识,分别将各自存储的所述媒体文件的子流发送给所述终端,其中,所述媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在所述M个服务器上,M为大于1的整数。
11.根据权利要求10所述的媒体文件处理方法,其特征在于,所述接收终端发送的媒体文件获取请求之后,还包括:
查询存储所述媒体文件的所述M个服务器的地址;
根据所述M个服务器的地址,分别将所述媒体文件获取请求转发给所述M个服务器;或者
所述分别将各自存储的所述媒体文件的子流发送给所述终端包括:
查询存储所述媒体文件的所述M个服务器的地址;
根据所述M个服务器的地址,分别从所述M个服务器中获取所述媒体文件的N个子流,为大于1的整数且N小于或等于M;
根据所述终端用户标识,将所述媒体文件的N个子流分别发送给所述终端;或者
所述分别将各自存储的所述媒体文件的子流发送给所述终端包括:
查询存储所述媒体文件的所述M个服务器的地址;
指示所述M个服务器分别各自存储的所述媒体文件的子流发送给所述终端。
12.根据权利要求10或11所述的媒体文件处理方法,其特征在于,存储热度最高的第一热度级别的媒体文件的服务器数量为构成所述服务器集群的服务器的数量L,L为大于或等于M的整数;
存储第一热度级别以外其余热度级别的媒体文件的服务器数量为P,P为小于L的整数。
13.根据权利要求10或11所述的媒体文件处理方法,其特征在于,还包括:
所述终端接收所述服务器集群返回的所述媒体文件的多个子流,并对该多个子流进行解码、组合,还原出所述媒体文件。
14.一种媒体文件业务处理装置,其特征在于,包括:
接收模块,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
查询模块,用于根据所述媒体文件标识,查询服务器集群中存储所述媒体文件的M个子流的M个服务器的地址;获取模块,用于根据所述M个服务器的地址,分别从所述M个服务器中获取所述媒体文件的N个子流,其中,N为大于1的整数且N小于或等于M;
发送模块,用于根据所述终端用户标识,将分别从所述M个服务器上的获取的且和所述媒体文件标识对应的媒体文件的N个子流,发送给所述终端;
其中,所述媒体文件根据热度,被编码成M个占用带宽相同的子流,并按照服务器负载均衡原则分别存储在所述M个服务器上,M为大于1的整数。
15.一种服务器集群,其特征在于,包括:
L个服务器,该L个服务器中的M个服务器分别用于按照服务器负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流,M为大于1的整数,且M小于或等于L;
媒体文件处理装置,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识,以及根据所述终端用户标识,将分别存储在服务器集群中M个服务器上的、所述媒体文件标识对应的媒体文件的子流,发送给所述终端。
16.根据权利要求15所述的服务器集群,其特征在于,所述服务器包括:
存储模块,用于与所述服务器集群中其它服务器之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流;相应地,
所述媒体文件处理装置包括:
接收模块,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
查询模块,用于查询存储所述媒体文件的M个子流的M个服务器的地址;
获取模块,用于根据所述M个服务器的地址,分别从所述M个服务器中获取所述媒体文件的N个子流,为大于1的整数且N小于或等于M;
发送模块,用于根据所述终端用户标识,将分别存储在所述M个服务器上存储模块中的、所述媒体文件标识对应的媒体文件的N个子流,发送给所述终端;或者
所述媒体文件处理装置包括:
接收模块,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
查询模块,用于查询存储所述媒体文件的M个子流的M个服务器的地址;
转发模块,用于根据所述M个服务器的地址,分别将所述媒体文件获取请求转发给所述M个服务器;相应地,
所述服务器包括:
第一接收模块,用于接收所述转发模块转发的媒体文件获取请求;
存储模块,用于与所述服务器集群中其它服务器之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流;
发送模块,用于根据所述媒体文件获取请求中的所述终端用户标识,将分别存储在所述存储模块中的、所述媒体文件标识对应的媒体文件的子流,发送给所述终端;或者
所述媒体文件处理装置包括:
接收模块,用于接收终端发送的媒体文件获取请求,该媒体文件获取请求中携带有媒体文件标识与终端用户标识;
查询模块,用于查询存储所述媒体文件的M个子流的M个服务器的地址;
指示模块,用于根据所述M个服务器的地址,分别指示所述M个服务器中的发送模块根据所述终端用户标识,将存储在该发送模块所在服务器上的、所述媒体文件标识对应的媒体文件的子流,发送给所述终端;相应地,
所述服务器包括:
第一接收模块,用于接收所述指示模块发送的指示信息;
存储模块,用于与所述服务器集群中其它服务器之间按照负载均衡原则,存储同一媒体文件被编码成的M个占用带宽相同的子流中的一个子流;
发送模块,用于根据所述媒体文件获取请求中的所述终端用户标识,将分别存储在所述存储模块中的、所述媒体文件标识对应的媒体文件的子流,发送给所述终端。
17.根据权利要求16所述的服务器集群,其特征在于,所述L个服务器中的L个存储模块分别用于存储热度最高的第一热度级别的媒体文件被编码成的L个占用带宽相同的子流中的一个子流,所述L个服务器按照负载均衡原则,其中的P个存储模块还分别用于存储第一热度级别以外其余热度级别的媒体文件被编码成的P个占用带宽相同的子流中的一个子流。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810170226.0A CN101729357B (zh) | 2008-10-14 | 2008-10-14 | 媒体文件存储处理与业务处理方法及装置、服务器集群 |
PCT/CN2009/074114 WO2010043146A1 (zh) | 2008-10-14 | 2009-09-22 | 媒体文件存储处理与业务处理方法及装置、服务器集群 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810170226.0A CN101729357B (zh) | 2008-10-14 | 2008-10-14 | 媒体文件存储处理与业务处理方法及装置、服务器集群 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101729357A true CN101729357A (zh) | 2010-06-09 |
CN101729357B CN101729357B (zh) | 2013-06-05 |
Family
ID=42106228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810170226.0A Expired - Fee Related CN101729357B (zh) | 2008-10-14 | 2008-10-14 | 媒体文件存储处理与业务处理方法及装置、服务器集群 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101729357B (zh) |
WO (1) | WO2010043146A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137283A (zh) * | 2010-06-10 | 2011-07-27 | 华为软件技术有限公司 | 应用的上线部署方法及其装置与系统 |
CN102523256A (zh) * | 2011-11-30 | 2012-06-27 | 华为技术有限公司 | 内容的管理方法的方法、装置和系统 |
CN103150347A (zh) * | 2013-02-07 | 2013-06-12 | 浙江大学 | 基于文件热度的动态副本管理方法 |
CN103186350A (zh) * | 2011-12-31 | 2013-07-03 | 北京快网科技有限公司 | 混合存储系统及热点数据块的迁移方法 |
CN103856535A (zh) * | 2012-12-05 | 2014-06-11 | 腾讯科技(北京)有限公司 | 一种获取用户数据的方法和装置 |
CN105959273A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体文件的分发方法及装置 |
CN107277093A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络及其负载均衡方法 |
CN107277097A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络及其负载预测均衡方法 |
CN109660819A (zh) * | 2017-10-10 | 2019-04-19 | 中国移动通信有限公司研究院 | 基于移动边缘计算的业务缓存方法、装置及服务基站 |
CN110022338A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 文件读取方法、系统、元数据服务器和用户设备 |
CN115550368A (zh) * | 2022-11-30 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 一种元数据上报方法、装置、设备及存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113840161B (zh) * | 2020-06-23 | 2023-07-25 | 龙芯中科技术股份有限公司 | 流媒体传输方法、接收方法、装置、电子设备及储存介质 |
CN115334321B (zh) * | 2022-08-10 | 2024-04-09 | 北京百度网讯科技有限公司 | 视频流的访问热度的获取方法、装置、电子设备及介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1227592C (zh) * | 2002-09-17 | 2005-11-16 | 华为技术有限公司 | 一种流媒体数据管理方法 |
CN100493091C (zh) * | 2006-03-10 | 2009-05-27 | 清华大学 | 基于会话初始化协议的流媒体直播p2p网络方法 |
WO2008011388A2 (en) * | 2006-07-15 | 2008-01-24 | Solid State Networks, Inc. | Methods and apparatus for transferring data |
CN101232464A (zh) * | 2008-02-28 | 2008-07-30 | 清华大学 | 基于时间权参数的p2p实时流媒体缓存替换方法 |
CN101232600B (zh) * | 2008-03-04 | 2011-07-20 | 华为技术有限公司 | 一种提供点播内容的方法、系统和装置 |
-
2008
- 2008-10-14 CN CN200810170226.0A patent/CN101729357B/zh not_active Expired - Fee Related
-
2009
- 2009-09-22 WO PCT/CN2009/074114 patent/WO2010043146A1/zh active Application Filing
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137283A (zh) * | 2010-06-10 | 2011-07-27 | 华为软件技术有限公司 | 应用的上线部署方法及其装置与系统 |
CN102137283B (zh) * | 2010-06-10 | 2014-10-08 | 华为软件技术有限公司 | 应用的上线部署方法及其装置与系统 |
CN102523256B (zh) * | 2011-11-30 | 2014-07-30 | 华为技术有限公司 | 内容的管理方法的方法、装置和系统 |
CN102523256A (zh) * | 2011-11-30 | 2012-06-27 | 华为技术有限公司 | 内容的管理方法的方法、装置和系统 |
WO2013078875A1 (zh) * | 2011-11-30 | 2013-06-06 | 华为技术有限公司 | 内容的管理方法的方法、装置和系统 |
CN103186350B (zh) * | 2011-12-31 | 2016-03-30 | 北京快网科技有限公司 | 混合存储系统及热点数据块的迁移方法 |
CN103186350A (zh) * | 2011-12-31 | 2013-07-03 | 北京快网科技有限公司 | 混合存储系统及热点数据块的迁移方法 |
CN103856535A (zh) * | 2012-12-05 | 2014-06-11 | 腾讯科技(北京)有限公司 | 一种获取用户数据的方法和装置 |
CN103856535B (zh) * | 2012-12-05 | 2018-09-04 | 腾讯科技(北京)有限公司 | 一种获取用户数据的方法和装置 |
CN103150347B (zh) * | 2013-02-07 | 2015-10-21 | 浙江大学 | 基于文件热度的动态副本管理方法 |
CN103150347A (zh) * | 2013-02-07 | 2013-06-12 | 浙江大学 | 基于文件热度的动态副本管理方法 |
CN107277093A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络及其负载均衡方法 |
CN107277097A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络及其负载预测均衡方法 |
CN105959273A (zh) * | 2016-04-25 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种流媒体文件的分发方法及装置 |
CN109660819A (zh) * | 2017-10-10 | 2019-04-19 | 中国移动通信有限公司研究院 | 基于移动边缘计算的业务缓存方法、装置及服务基站 |
CN110022338A (zh) * | 2018-01-09 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 文件读取方法、系统、元数据服务器和用户设备 |
CN110022338B (zh) * | 2018-01-09 | 2022-05-27 | 阿里巴巴集团控股有限公司 | 文件读取方法、系统、元数据服务器和用户设备 |
CN115550368A (zh) * | 2022-11-30 | 2022-12-30 | 苏州浪潮智能科技有限公司 | 一种元数据上报方法、装置、设备及存储介质 |
CN115550368B (zh) * | 2022-11-30 | 2023-03-10 | 苏州浪潮智能科技有限公司 | 一种元数据上报方法、装置、设备及存储介质 |
WO2024113898A1 (zh) * | 2022-11-30 | 2024-06-06 | 苏州元脑智能科技有限公司 | 一种元数据上报方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101729357B (zh) | 2013-06-05 |
WO2010043146A1 (zh) | 2010-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101729357B (zh) | 媒体文件存储处理与业务处理方法及装置、服务器集群 | |
CN101540775B (zh) | 内容分发方法、装置与内容分发网络系统 | |
CN100461740C (zh) | 一种客户端节点网络拓扑构造方法及流媒体分发系统 | |
CN101287107B (zh) | 媒体文件的点播方法、系统和设备 | |
US8880650B2 (en) | System and method for storing streaming media file | |
US20140165119A1 (en) | Offline download method, multimedia file download method and system thereof | |
CN101355522B (zh) | 一种媒体服务器的控制方法和系统 | |
US20070288638A1 (en) | Methods and distributed systems for data location and delivery | |
CN100553331C (zh) | 基于p2p技术的视频网络中的内容分发与存储系统及其方法 | |
CN101873355A (zh) | 一种下载文件的方法、装置和系统 | |
CN101594292A (zh) | 内容发布方法、服务重定向方法及系统、节点设备 | |
CN102469072A (zh) | 流媒体服务方法、系统及客户端 | |
CN102316097B (zh) | 一种减少用户等待时间的流媒体调度分发方法 | |
Lin et al. | A hierarchical network storage architecture for video-on-demand services | |
TW201234194A (en) | Data stream management system for accessing mass data | |
CN111263229A (zh) | 一种视频分发方法、装置及电子设备 | |
US20170078346A1 (en) | Dynamic Resource Allocation of Multimedia Content Based on Usage Patterns | |
US20110209184A1 (en) | Content distribution method, system, device and media server | |
CN111510734A (zh) | 一种cdn调度方法、装置、存储介质及设备 | |
CA2594716A1 (en) | Video and multimedia distribution system | |
CN101330594B (zh) | 对等网络视频点播媒体的存储方法及其媒体点播系统 | |
CN102769666A (zh) | 一种云存储方法及云存储系统 | |
US20090100188A1 (en) | Method and system for cluster-wide predictive and selective caching in scalable iptv systems | |
CN103369368A (zh) | 一种支持多码率版本的视频云点播缓存调度方法 | |
CN101848224A (zh) | 一种对等网络流媒体网络编码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130605 |
|
CF01 | Termination of patent right due to non-payment of annual fee |