CN101355476B - 一种基于服务器群集的数据文件存储、分发和应用的系统和方法 - Google Patents
一种基于服务器群集的数据文件存储、分发和应用的系统和方法 Download PDFInfo
- Publication number
- CN101355476B CN101355476B CN2008100980470A CN200810098047A CN101355476B CN 101355476 B CN101355476 B CN 101355476B CN 2008100980470 A CN2008100980470 A CN 2008100980470A CN 200810098047 A CN200810098047 A CN 200810098047A CN 101355476 B CN101355476 B CN 101355476B
- Authority
- CN
- China
- Prior art keywords
- server
- file
- user
- storage
- data file
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于服务器群集的数据文件存储、分发和应用的系统和方法。系统可根据用户的分布情况在互联网上部署服务器以保证有足够的存储空间和网络带宽满足用户的需求。系统能根据用户的查询、上传、下载及使用请求等信息自动分配和均衡服务器群集的存储空间和负载,以保证用户如同使用本地客户机硬盘一样使用服务器的存储空间。系统为用户提供相应的服务器存储空间,用户登录后在互联网上找到自己需要并可供下载的文件后,将文件下载到服务器并加入已下载文件列表。用户也可上传文件到服务器供其他用户下载使用。用户可定制界面,规定已上传文件列表和已下载文件列表的访问权限并可通过系统提供的应用软件使用已下载文件列表里的文件。
Description
【技术领域】
本发明涉及计算机及网络和通讯领域,特别是数据文件的存储、分发和应用的方法与系统。
【背景技术】
从数据的存储、分发和应用的角度看,目前通过互联网实现信息的传播和共享主要有两种方式:
一、数据存储在服务器或其它客户机端,用户通过网络从远端直接获取数据并在自己的客户机上使用。这种方式带来的问题是如果大量用户集中访问服务器将使得服务器和主干网络出现阻塞,导致服务器和网络的响应变慢,时滞增大甚至无法访问。虽然如如图一所示的内容分发网络(CDN)技术可以解决这个问题,但成本较高,只能实现单向分发。如如图二所示的Peer to Peer(P2P)技术能够以最低的成本有效地解决服务器阻塞的问题,但需要占用客户机的资源,由于客户机的产权是用户的,因此难以有效地管理和利用客户机的资源,同时还会大量占用主干网络的带宽。此外,无论是CDN还是P2P均只能提供内容的分发服务,无法提供有效的存储服务。
二、用户通过网络将数据下载到客户机存储后再使用这些数据,下载源可以是服务器,也可以是其它的客户机。由于需要将数据下载到客户机后再使用,因此下载和存储数据文件会占用客户机的资源和时间,在有大量数据需要下载时开销将会很大。如果用户采用P2P的方式通过网络分发存储在客户机上的数据时,还会大量占用主干网络的带宽。
【发明内容】
为了解决上述问题,本发明提出一种系统和方法,在互联网上部署如图三所示由分布式服务器群集构成的存储分发平台,平台可以在最接近用户的服务器上分配足够的存储空间供用户上传、下载和存储数据文件,使得用户可以将数据文件下载或上传到服务器的用户存储空间后再使用或分发。由于分配给用户存储空间的服务器部署在最接近用户的网络节点并且有足够的I/O吞吐能力和网络带宽,可以保证用户使用储存在服务器用户存储空间的数据文件时与使用存储在客户机本地硬盘的数据文件一样,所以用户不需要把数据文件下载到客户机,也不会占用客户机的资源和时间。当用户上传文件时也会大大缩短上传时间,分发时也不会占用客户机的资源和时间。由于有足够的服务器并且部署在最接近用户的网络节点上,数据文件将根据用户的请求分布在最接近用户的服务器上,因此不会出现大量用户集中访问服务器造成的服务器和网络出现阻塞的问题,也避免了采用P2P技术造成的主干网络占用过多的问题。
根据本发明提出的数据上传、下载、存储及分发、使用的方法和系统,能够解决由于大量用户集中访问造成的服务器和网络阻塞以及下载数据文件占用客户机资源和时间的问题。
本发明的系统由分布在互联网上的多个服务器群集构成,每个服务器群集包括多台部署在城域网或局域网上的服务器,服务器通过接入网络或局域网与用户的客户机连接。群集内的服务器之间通过城域网或局域网连接,不同城域网或局域网的服务器群集之间通过互联网或广域网联接。
群集和群集中的服务器数量可根据用户的需求和应用的要求动态扩充并根据网络流量和用户需求部署在最接近用户的城域网或接入网的节点上,以保证用户和应用程序可以获得足够的存储空间、服务器I/O吞吐能力和计算能力以及网络带宽。
群集内的服务器如图四所示分为管理服务器、应用服务器和存储服务器。管理服务器负责群集的管理,包括服务器、用户、数据文件、应用程序的管理和与其它群集管理服务器的通讯与协同;应用服务器运行应用软件并通过网络向用户提供应用服务;存储服务器的存储空间分为有效存储空间和缓存空间,用于存储和分发数据文件。管理服务器、应用服务器和存储服务器的划分是逻辑意义上的,即既可以在不同的服务器硬件上运行,也可以在同一台服务器硬件上运行。
通过互联网将部署在不同地区的服务器群集连接在一起即构成基于互联网的由分布式服务器群集构建的数据文件存储分发平台。群集与群集之间的通讯通过互联网和管理服务器进行,群集内服务器之间的通讯通过城域网或局域网和管理服务器进行。在管理服务器的管理、调度和控制下,实现在群集内部以及群集之间的存储服务器与存储服务器之间的数据文件的传送、分配和存储管理。因此,系统可以实现群集之间以及服务器之间的信息交换和数据文件的调度和分配,获取彼此的工作状态和数据,在服务器之间分布和调度数据文件和应用不仅可以实现整个系统的负载均衡和存储空间优化,还可以实现群集内的服务器之间互为备份以及群集与群集之间互为备份,从而使得系统具有极高的可靠性。
管理服务器包括服务器资源管理、用户管理及用户界面管理和群集间通讯等模块。
管理服务器的服务器资源管理模块用于对群集内的服务器资源进行管理。当服务器加入群集时需要通过此模块在管理服务器上注册,登记服务器的类型、可用资源、位置等信息并取得唯一的服务器ID,服务器ID由群集标识、服务器标识和服务器类型组成;获得群集内管理服务器的列表和优先级以及与管理服务器定时通讯的时间间隔;建立与管理服务器的连接,定时向管理服务器报告服务器的运行状态和资源使用情况,接受管理服务器分配的任务。服务器资源管理模块通过互联网获得标准时钟信息并据此定时校正群集内所有服务器的时钟,以保证所有服务器同步运行。管理服务器通过此模块查询服务器的位置、运行状态、资源占用等信息并利用这些信息结合用户的位置、请求和所需要的资源向服务器分配任务;定时检查服务器的运行情况和资源使用情况并据此按照一定的规则分配和释放服务器的资源以优化资源的配置,如发现故障立即将因故障阻塞的应用和用户转移到其它服务器并向系统管理员报告。
管理服务器的服务器资源管理模块维护服务器资源列表。服务器负载和服务器可用存储空间由管理服务器与群集内的各服务器定时通讯获得,如果在规定时间内管理服务器的服务器资源管理模块不能从某台服务器获得其负载和可用存储空间的情况,视为该服务器出现故障,将该服务器的负载转移到其它服务器并在后台管理界面上报警。当服务器的故障被排除后,管理服务器根据记录的信息将有关文件和信息从其它服务器复制到故障已被排除的服务器上,使服务器恢复到故障前的工作状态。
管理服务器的群集间通讯模块用于与其它服务器群集的通讯和协同。当新的群集建立后将通过管理服务器的群集间通讯模块在已有群集的管理服务器上登记并获得已有群集的登记信息;建立与其它群集管理服务器的连接,定时向其它群集的管理服务器报告本群集的运行状态和资源使用情况;接受其它群集管理服务器发出的对本群集资源的查询和资源使用申请,根据使用申请的要求对群集内满足条件的应用服务器和存储服务器分配任务。管理服务器在收到用户请求后,如果查询本群集的服务器资源无法满足用户需求,可通过此模块查询其它群集的位置、运行状态、可用资源等信息并利用这些信息结合用户的位置、请求和所需要的资源向拥有可用资源的群集管理服务器申请资源。定时根据其它群集的运行情况和资源使用情况对本群集服务器的资源按照一定的规则分配和释放,以优化资源的配置。
管理服务器的群集间通讯模块维护群集资源列表。群集在线用户数和群集可用存储空间由管理服务器的群集间通讯模块与各群集的管理服务器定时通讯获得,如果在规定时间内管理服务器的群集间通讯模块不能从某群集获得其在线用户数和可用存储空间的情况,视为该群集出现故障,将该群集承担的负载转移到其它群集并在后台管理界面上表示。
管理服务器的用户管理模块包括用户的注册、登录、权限认证、资源分配和调度以及资源使用统计和计费等子模块,负责管理本群集的全部用户。用户可以注册一个主账号和多个子账号,主账号拥有全部权限,包括下载、上传、管理和使用数据文件以及定制界面的权限,子账号的权限由主账号分配。用户登录后管理服务器根据用户的请求、权限、所在位置以及应用服务器和存储服务器的运行状态和资源使用情况为用户分配相应的服务器。应用服务器和存储服务器接受管理服务器分配的任务后根据用户名、请求、时间和使用的资源等信息生成密钥通过管理服务器发送给用户,用户使用此密钥与应用服务器和存储服务器建立连接从而获得需要的服务和资源。密钥每一次都不相同并且用户与应用服务器和存储服务器之间的连接在完成用户请求的任务后即中止。
管理服务器的用户管理模块维护本群集所有用户的用户列表、已下载文件列表和上传文件列表,并且通过服务器资源管理模块与应用服务器协同维护文件与用户关联列表。
当用户的下载请求完成后应用服务器的下载模块在已下载文件列表中添加下载文件纪录,用户可以通过应用服务器的管理和应用模块删除已下载文件列表中的文件。
当用户的上传请求完成后应用服务器的上传模块在用户的已上传文件列表中添加上传文件纪录,用户可以通过应用服务器的管理和应用模块删除已上传文件列表中的文件。如果访问权限规定只允许指定用户访问,还包括一个与此文件关联的用户列表。当已上传文件列表更新后,管理服务器通过群集间通讯模块将本集群的上传文件列表发送给其它集群。
管理服务器的用户界面管理模块通过调用应用服务器的发布模块向用户发布用户可以使用的文件目录、系统资源等有关信息。用户可以使用的文件目录由管理服务器根据用户的已下载文件列表及上传文件列表确定。上传文件列表包括本群集和其它群集用户上传的文件,用户界面管理模块按照规定的条件和权限确定如何向用户发布可使用的文件目录和系统资源。
由于用户可以使用和处理的文件要么是已下载文件列表中的文件,要么是上传文件列表中的文件,因此,管理服务器在接到用户播放、浏览或下载等文件使用和处理的请求后,按照用户给出的文件名通过文件列表检索到对应的文件ID,通过查找管理服务器存储的文件关联列表、已上传文件列表和存储文件列表确定文件的位置所在。如果用户请求的文件在本群集中,管理服务器的用户界面管理模块调用应用服务器的播放、浏览和下载等文件使用和处理子模块为用户提供应用服务。如果用户请求的文件在其它群集,管理服务器调用应用服务器的下载模块将文件从其它群集下载到本群集存储服务器的同时,调用应用服务器的播放、浏览和下载等文件使用和处理子模块为用户提供应用服务。
应用服务器为用户提供应用服务,可在服务器上运行应用程序而不占用或少占用用户的客户机资源。用户通过管理服务器与应用服务器建立连接,应用服务器与存储服务器连接对储存在存储服务器的数据文件进行操作。应用服务器包括数据文件的下载、上传、发布、分发、管理和使用以及文件校验码生成校验等模块。
应用服务器的下载和上传模块维护文件列表。文件校验码用于确定文件的唯一性和完整性,每一个不同的文件都有一个不同的文件校验码,相同的文件校验码有相同的校验码;通过对一个文件生成校验码与原有的校验码对比来确认文件是否完整以及是否为同一个文件。
下载模块可根据相关协议和许可从互联网的其它服务器或客户机下载数据文件到存储服务器。下载模块根据存储数据文件的源点使用的协议从源点下载数据文件到存储服务器,调用文件校验码生成校验模块对文件进行完整性检查并生成校验码,根据文件的相关信息在文件列表中添加此文件的纪录并将用户与该文件关联后在用户的已下载文件列表中加入此文件。
上传模块按照用户的要求从用户的客户机上传数据文件到存储服务器。上传模块上传文件到存储服务器后调用文件校验码生成校验模块对文件进行完整性检查并生成校验码后,根据文件的相关信息在文件列表中添加此文件的纪录并将该文件加入用户的上传文件列表,按照用户的要求确定文件可供查询和分发的范围和权限。
发布模块根据文件列表向用户发布可供下载或使用的文件信息供用户下载和使用。除了文件列表中列出的文件外,用户还可以通过管理服务器向应用服务器的发布模块直接提交可下载的文件信息和下载地址。发布模块还提供搜索工具供用户查找可下载的资源。发布模块由管理服务器的用户界面管理模块调用,在管理服务器上向用户发布信息。
分发模块负责群集内和群集间的数据分发,根据用户的请求和系统的负载将数据文分发到存储服务器的缓存空间中以实现负载均衡的目的。分发模块一般由其它模块调用,用户不能直接使用,所有的分发操作必须通过分发模块执行。
如图五所示分发模块接到分发指令后首先检查目的服务器是否已经存有待分发的数据文件?如已存在,不执行分发操作。如不存在,检查目的存储服务器是否有足够的存储空间存放待分发的数据文件?如果空间不足,不执行分发操作并在群集中寻找有足够存储空间的存储服务器作为目的服务器,如果整个群集的所有存储服务器均没有足够的存储空间,分发模块向管理服务器申请存储空间,管理服务器调用服务器资源管理模块释放存储服务器的存储空间。
文件校验码生成校验模块按照指令对指定文件进行完整性和唯一性检查,如果文件还没有校验码,则文件校验码生成校验模块将为文件生成新的校验码。
管理和应用模块可以让用户通过已下载文件列表和上传文件列表使用和管理用户下载或上传到存储服务器中的数据文件。已下载用户列表只允许用户的主账号和子账号访问,其他用户不能访问,上传文件列表根据用户上传时的设置可以允许或不允许其他用户访问。用户用主账号登录后可以规定已下载文件列表的访问权限和定制界面,只允许用子账号登录的用户通过定制的界面访问已下载文件列表里允许其访问的文件。
用户可以对已下载文件列表中的数据文件分类和整理,管理和应用模块只对用户已下载文件列表里的数据文件分类和排列,不会影响上传文件列表,也不会对其他用户的已下载文件列表产生影响。用户删除已下载文件列表中的数据文件时管理和应用模块从用户的已下载文件列表里删除此文件并删除用户对此文件的关联。
用户通过管理和应用模块对上传列表中的数据文件分类和排列时将改变其他用户看到的视图,但不会影响已下载文件列表的分类和排列。用户删除上传文件列表中的数据文件时管理和应用模块从用户的上传文件列表里删除此文件并通知存储服务器存储管理模块删除存储在存储服务器里缓存空间和有效存储空间里的文件。
用户可以规定上传文件列表的访问权限和定制界面,只允许指定用户使用指定方式通过定制的界面访问和使用上传文件列表里的指定文件。管理和应用模块提供可由上传用户定制的界面供其他用户访问和使用,按照上传用户规定的权限,其他用户可以用管理和应用模块提供的播放器或浏览器播放或浏览已上传文件列表里的数据文件,也可以用下载工具将已上传文件列表里的数据文件下载到客户机后再使用。用户可以规定允许哪些用户访问和使用、使用的方式以及是否收费等。管理和应用模块还提供统计、计费和收费接口供上传用户统计其他用户对已上传文件列表的访问和使用情况并对收费内容进行计费和收费。根据其他用户对已下载文件列表的访问情况,管理和应用模块会调用分发模块对已上传文件列表中访问和使用频率较高的文件进行分发,以减轻服务器的负载,改善服务质量。
用户可以通过管理服务器的用户界面管理模块调用管理和应用模块里的播放子模块或浏览子模块播放或浏览文件列表或已下载文件列表里的数据文件,也可以根据规定的权限通过应用服务器的下载子模块将文件列表或已下载文件列表里可供用户下载到客户机的的数据文件下载到客户机后再使用。
应用服务器还包括应用程序开发接口供开发新的应用程序。
存储服务器提供数据文件的存储和分发服务。存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块的控制下与应用服务器的分发模块和管理与应用模块协同工作。存储服务器的存储空间在逻辑上分为缓存空间和有效存储空间,在一般情况下缓存空间中存储的内容是变动的,即缓存空间存储的数据文件是可以被删除的,而有效存储空间中存储的数据文件是保留的。每台存储服务器都要保留一定的缓存空间供分发数据文件使用。
数据文件分为公众可获得的共享文件以及只限于用户自己使用或在指定范围内传播的私有文件。用户从互联网下载的文件作为共享数据文件存储在存储服务器的缓存空间中,管理服务器根据用户的下载和使用情况通过应用服务器的下载模块以及管理和应用模块调用分发模块将数据文件分发到其它存储服务器的缓存空间内。用户上传的文件存储在存储服务器的有效存储空间内,其中允许公开传播的文件可根据上传用户规定的权限以及用户的下载和使用情况通过应用服务器的下载模块以及管理和应用模块调用分发模块将数据文件分发到其它存储服务器的缓存空间内。
存储服务器的存储管理模块通过存储文件列表和数据文件访问列表来管理存储服务器的缓存空间、有效存储空间和数据文件。存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,使得本集群存储服务器所存储数据文件的数量在能够满足用户需求的同时存储空间得到有效的利用。同时,在本群集管理服务器的服务器资源管理模块和群集间通讯模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,根据从其它群集获得的信息使得整个系统所有存储服务器存储的数据文件数量能够满足用户需求并且存储空间得到有效的利用。
【附图说明】
图1:CDN的数据下载及存储系统的结构图
图2:P2P的数据下载及存储系统的结构图
图3:本发明的数据下载及存储系统的结构图
图4:本发明的服务器及模块结构图
图5:本发明的文件分发流程图
图6:本发明的生成待删除列表的流程图
图7:本发明的服务器群集结构图
图8:本发明的增加了存储服务器后的服务器群集结构图
图9:本发明的通过增加集群数量来提高覆盖面积的示意图
图10:本发明的一个实例中的用户使用本系统的流程图
图11:本发明概要示意图
【实施实例】
实施实例采用本发明提出的方法构建一个以影视节目为代表的音视频内容存储分发平台,平台由多个服务器群集组成,每个服务器集群覆盖一定区域的所有用户,当该区域的用户数量接近或达到服务器集群额定的I/O吞吐能力时,可以增加服务器数量来满足用户的需要。当用户的数量超过该区域网络带宽的时候,将该区域分为两个或更多小区域并将服务器前移到这些小区域,通过这种方式可以有效的解决视频点播这样的不对称、非同步信息分发服务带来的网络带宽不足的问题。区域的划分可以采用物理的或虚拟网的方式进行,分区后的用户由不同的服务器提供服务,而服务器之间进行负载均衡。
音视频内容存储分发平台构建在宽带互联网上,接入网可以是ADSL或Lan,如果广电的HFC网能够支持IP的话,平台也可以直接构建在其上。因此,不需要对现有的宽带互联网做改造。
每个服务器群集的结构如图七所示,由M台管理和应用服务器以及N台存储服务器构成,即管理服务器和应用服务器的软件模块安装并运行在管理和应用服务器上,存储服务器存储管理模块安装并运行在存储服务器上。
由于每个群集均有两台以上的管理服务器,每台管理服务器均有独立的IP地址和唯一的事先规定的正整数编号,编号最小的那台管理服务器绑定一个事先规定的浮动IP地址作为工作管理服务器,其它管理服务器作为备份,此浮动IP地址可视为本集群管理服务器的IP地址。在正常情况下,群集内的其它服务器以及其它群集向浮动此IP地址发送信息,再由绑定此浮动IP地址的管理服务器分发给其它的管理服务器以保证备份服务器的存储的信息与工作服务器存储的信息是一致的。工作的管理服务器承担接受用户的访问并据此分配服务器资源以及服务器管理的工作,也可以根据负载将部分工作分配给备份的管理服务器。管理服务器之间定时通讯交换工作状态,如在规定时间内不能接收到某台管理服务器的信息,视为该服务器出现故障,在后台管理界面上报警。如发生故障的管理服务器是工作管理服务器,其它管理服务器中编号最小的那台管理服务器自动绑定规定的浮动IP地址,接替故障的工作服务器成为群集管理服务器。
作为起点可以按照M=2、N=3的方式构建服务器群集,即用2台管理和应用服务器和3台存储服务器构建一个2+3服务器群集。2台管理和应用服务器互为备份,负责群集的管理,包括服务器、用户、数据文件、应用程序的管理和与其它群集管理服务器的通讯与协同并向用户提供应用服务;3台存储服务器用于存储和分发数据文件并且可互为备份。
如图八所示当用户数量增加使得存储服务器的网络带宽或存储空间不足时,可以通过增加存储服务器的数量来保证有足够的网络带宽和存储空间满足用户的需求;当用户的数量增长使得管理和应用服务器不能承受时,可以增加管理和应用服务器的数量以获得足够的资源满足用户的需求。因此,通过动态扩展群集内服务器的数量可以满足群集所覆盖区域用户的需求。
音视频内容存储分发平台的每一个服务器群集都覆盖一定的区域,增加服务器群集的数量将可以覆盖更大的区域如图九所示,本发明提出的方法可以动态扩展服务器集群,因此将可以使得音视频内容存储分发平台覆盖任何区域并具备足够的资源能够满足用户的需求。
按照本发明提出的方法,用户将在距离自己最近的服务器群集中获得足够的存储空间下载或上传影视节目内容。
首先,用户将音像节目内容下载到由服务器向用户提供的存储空间内,然后再有用户点播服务器存储空间中存储的音像节目内容。
如图十所示,以用户的角度看其实现过程如下:
步骤1、用户注册后登录到其获得的视频存储空间;
步骤2、用户使用平台提供的搜索工具在互联网上查找自己想要下载的音像节目内容,系统也可以提供其他用户下载内容的排行榜或者影评等信息供用户参考;
步骤3、用户使用系统提供的下载工具将音像节目内容下载到系统服务器上自己的存储空间中;
步骤4、系统生成已经按用户的要求下载到服务器上其个人存储空间中的音像节目内容的目录,供用户从其个人的音像存储空间中点播。用户也可按照自己的意愿组织个人影视空间的节目内容,比如适合孩子看的影视节目目录等;
步骤5、用户从上述音像节目内容目录中选择自己喜欢的节目点播或下载。
由于音视频内容存储分发平台的服务器24小时开机在线,因此通过平台的服务器下载音像节目可以不需要用户的电脑开机,也不占用用户电脑的存储空间,大大减少了用户的下载成本。同时,音视频内容存储分发平台拥有足够多的服务器和存储空间并使得服务器部署在最接近用户的网络节点上,即服务器与用户电脑之间的距离最短而服务器的数量与用户的数量相适应,因此能充分保证服务器到用户有足够的网络带宽和服务器的I/O吞吐能力,从而保证了用户从其个人存储空间实时点播影视节目的质量。当然,用户如果要将节目从个人影视空间下载到其个人电脑上也将比其直接从互联网上下载要快得多。
当应用服务器接到管理服务器转发的用户下载音视频数据文件的请求后,下载模块首先根据用户给出的文件名查询文件列表,如果文件列表中有此文件,则根据文件名获得其文件ID,再通过管理服务器根据文件ID查询群集内的存储服务器是否存有此数据文件?如果文件存在,下载模块调用分发模块在群集内的存储服务器之间分发此文件并将用户与此文件关联后在用户的已下载文件列表中加入此文件;如果文件不存在,管理服务器查询其它群集的存储服务器是否存有此数据文件?如果其它群集的存储服务器存有此文件,下载模块调用分发模块将此数据文件分发到本群集的存储服务器并将用户与此文件关联,在用户的已下载文件列表中加入此文件;如果其它群集的存储服务器中没有此数据文件,下载模块根据存储数据文件的源点使用的协议从源点下载数据文件到存储服务器。如果下载模块在文件列表中未能找到用户要下载的文件,下载模块根据存储数据文件的源点使用的协议从源点下载数据文件到存储服务器,调用文件校验码生成校验模块对文件进行完整性检查并生成校验码,根据文件的相关信息在文件列表中添加此文件的纪录并将用户与该文件关联后在用户的已下载文件列表中加入此文件。
这种方式使得用户可以以最少的成本充分获得和利用互联网上大量的音像节目资源,建立自己的个人影视和音乐节目库并且可以按照自己的需求修改界面,比如可以设置专门给孩子看的栏目等。
除提供下载空间外,音视频内容存储分发平台还可以提供上载服务供用户交流自己制作的音像节目内容。用户可以设定自己上传的节目内容是只供自己欣赏还是可以提供给其他网友欣赏,提供给其他网友欣赏的可以设置为免费以及收费等。
音视频内容存储分发平台部署在地、市一级电信或网通的网络节点上,可以根据用户的数量和网络的情况动态扩充以保证服务器的数量、存储空间和网络带宽与用户数量及其对节目内容的存储要求相适应。当用户下载的音像节目存储到音视频内容存储分发平台的服务器以后,其他用户再下载此节目内容时只需在平台内的服务器群集或群集内的服务器之间进行负载均衡,这将避免采用P2P方式分发音像内容会过多地占用电信运营商骨干网络传输流量的问题,可以充分利用城域网和接入网的带宽。
群集间和群集内音视频数据文件的分发按下列方式进行:
分发模块接到分发指令后首先检查目的服务器是否已经存有待分发的数据文件?如已存在,不执行分发操作。如不存在,检查目的存储服务器是否有足够的存储空间存放待分发的数据文件?如果空间不足,不执行分发操作并在群集中寻找有足够存储空间的存储服务器作为目的服务器,如果整个群集的所有存储服务器均没有足够的存储空间,分发模块向管理服务器申请存储空间,管理服务器调用服务器资源管理模块释放存储服务器的存储空间。如果源和目的服务器在同一个群集内,分发模块根据群集内关联到此文件的用户数决定需要分发的目的存储服务器的数量,如群集有N台存储服务器,可设定关联参数K,如果关联到此文件的用户数小于K,不执行任何操作,如果关联到此文件的用户数大于K小于2K,则将文件分发到一台目的存储服务器,如果关联到此文件的用户数大于2K小于3K,则将文件分发到2台目的存储服务器,以此类推,最多可分发到N-1台存储服务器。如果源和目的服务器不在同一个群集,分发模块通过管理服务器查询是否有多台存有待分发数据文件的源服务器?如只有一台源服务器,则从该源服务器将数据文件分发到目的服务器,如存在多台源服务器,分发模块将根据从管理服务器,获得的有关源服务器的位置、负载、可用资源等信息选定一台或多台源服务器来分发数据文件。
为了保证存储服务器的存储空间得到有效利用,存储服务器的存储管理模块通过存储文件列表和数据文件访问列表与管理服务器的相应模块协同按下列方式来管理存储服务器的缓存空间、有效存储空间和数据文件。
当应用服务器的下载、上传、分发模块在存储服务器中建立一个新的数据文件时,在存储文件列表中增加一条记录,存储类型取决于系统存储服务器中该文件的存放份数,如果是下载、分发或上传模块建立的文件并且该文件在所有群集的存储服务器中至少存有两份,则将该文件的存储类型标识为缓存即这些文件存放在缓存空间,如果该文件在所有群集的存储服务器中存放的总份数小于或等于2,则将该文件的存储类型标识为有效存储即这些文件存放在有效存储空间。根据一定的规则可以改变文件的存储类型,即可将缓存空间的文件转移到有效存储空间或相反。如果文件被删除,从存储文件列表中删除该文件的纪录。存储服务器存储管理模块维护存储文件列表并在存储文件列表有变动时发送给管理服务器,管理服务器的服务器资源管理模块根据存储服务器发送的信息维护本群集所有存储服务器的存储文件列表,在必要时管理服务器也可向存储服务器查询以获得存储文件列表。
当用户通过应用服务器的下载和管理与应用模块访问和使用存储服务器的数据文件时,在数据文件访问列表加入文件访问记录。当数据文件被删除后,删除数据文件访问列表中该文件的全部访问记录。存储服务器存储管理模块维护数据文件访问列表并定时将数据文件访问列表发送给管理服务器,管理服务器的服务器资源管理模块根据存储服务器定时发送的信息维护本群集所有存储服务器的数据文件访问列表,在必要时管理服务器也可向存储服务器随时查询数据文件访问列表。
如图六所示管理服务器的服务器资源管理模块按照统一规定的时间t和时段T,每天通过数据文件访问列表统计截至到t时刻在T时段内群集中每台存储服务器的每个数据文件的访问次数,找出在这段时间中访问次数为0的数据文件ID,根据找到的数据文件ID查询每台存储服务器的存储文件列表,找出本群集内所有存储此数据文件且存储类型为缓存的存储服务器并据此生成本群集当天的待删除文件列表。待删除文件列表包括文件ID、文件所在存储服务器ID、文件建立时间、删除标识等字段。文件ID、文件所在存储服务器ID、文件建立时间等字段的信息从存储文件列表中获取,删除标识分为待删除和保留两类,访问次数为0的数据文件所在的存储服务器ID标识为待删除类型,访问次数不为0的数据文件所在的存储服务器ID标识为保留类型。根据待删除文件列表的信息,管理服务器的服务器资源管理模块按照下列规则确定如何删除数据文件。
如果待删除文件列表中同一数据文件ID有两条以上待删除纪录,保留文件建立最晚的两台存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它待删除记录的数据文件并从存储文件列表中删除对应的纪录,从待删除文件列表中删除数据文件被删除的存储服务器对应的纪录。
如果待删除文件列表中同一数据文件ID有两条或以上的保留纪录,不删除有保留纪录的存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件并从存储文件列表中删除相应的纪录,从待删除文件列表中删除数据文件被删除的存储服务器对应的纪录。
如果待删除文件列表中同一数据文件ID有一条保留纪录和一条以上的待删除纪录,不删除有保留纪录的存储服务器以及文件建立最晚的那台存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它待删除记录的数据文件并从存储文件列表中删除相应的纪录,从待删除文件列表中删除数据文件被删除的存储服务器对应的纪录。
如果待删除文件列表中同一数据文件ID没有保留纪录但有两条待删除纪录,不做任何处理。
如果待删除文件列表中同一数据文件ID有一条保留纪录和一条待删除纪录,不做任何处理。
如果待删除文件列表中同一数据文件ID只有一条待删除纪录,不做任何处理。
按照上述规则处理后,如果待删除文件列表里已经没有待删除纪录,删除任务到此结束。如果待删除文件列表里还有待删除纪录,管理服务器的服务器资源管理模块从待删除文件列表中留下的待删除纪录中取得数据文件ID,生成待删除文件查询表并发给除本群集之外的所有群集的管理服务器进行查询。
管理服务器的服务器资源管理模块收到其它群集发来的待删除文件查询列表后,查询本群集的用户文件关联列表、存储文件列表以及待删除文件列表中是否存在待删除文件查询列表中列出的文件,根据查询的结果生成待删除文件查询结果列表发回发出查询列表的群集管理服务器。待删除文件查询结果表包括文件ID、文件所在存储服务器ID、存储类型、删除类型、文件建立时间、关联用户数等字段。其中存储服务器ID包含群集ID,删除类型、文件建立时间以及关联用户数等三个字段在待删除文件查询表中包含有本群集待删除文件列表中的文件ID时才需要填写,否则均为-1。如果存储文件列表中不存在待删除文件查询列表中列出的文件ID,管理服务器将空的待删除文件查询结果列表发回发出查询列表的群集管理服务器。
管理服务器的服务器资源管理模块收到其它群集发来的待删除文件查询结果列表后,根据本群集待删除文件列表中的待删除文件记录的文件ID查询其它群集发来的所有待删除文件查询结果列表并按下列规则确定如何删除数据文件。
如果其它群集发来的待删除文件查询结果列表中存在两个或两个以上与待删除记录的文件ID相同的文件ID并且其删除类型、文件建立时间以及关联用户数等三个字段均为-1,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件,从存储文件列表中删除相应的纪录。
如果其它群集发来的待删除文件查询结果列表中只有一个与待删除记录的文件ID相同的文件ID,本群集待删除文件列表中存在一条以上文件ID相同的待删除记录并且没有文件ID相同的保留纪录,则保留文件建立最晚的那台存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它待删除记录的数据文件,从存储文件列表中删除相应的纪录。
如果其它群集发来的待删除文件查询结果列表中只有一个与待删除记录的文件ID相同的文件ID,本群集待删除文件列表中存在一条或以上文件ID相同的待删除记录并且有一条或以上文件ID相同的保留纪录,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件,从存储文件列表中删除相应的纪录。
如果其它群集发来的待删除文件查询结果列表中只有一个与待删除记录的文件ID相同的文件ID,本群集待删除文件列表中存在一条文件ID相同的待删除记录并且没有文件ID相同的保留纪录,管理服务器的服务器资源管理模块查询本群集存储文件列表的有效空间是否存在此文件ID?如存在,不做任何处理;如不存在,在存储文件列表中将此文件的存储类型改变为有效存储。
如果其它群集发来的待删除文件查询结果列表中存在两个或两个以上与待删除记录的文件ID相同的文件ID并且其删除类型为待删除,根据文件ID在本群集的用户文件关联列表中查询其关联的用户数,与其它群集发来的全部待删除文件查询结果列表一起按关联用户数排序,关联用户数多的排在前面。如关联用户数相同则按文件建立时间排序,文件建立时间晚的排在前面。如果本群集待删除文件ID的排名在前二位并且待删除文件列表中没有文件ID相同的保留纪录,只有一条文件ID相同的待删除记录,不做任何处理。如果存在两条文件ID相同的待删除记录,则保留文件建立最晚的那台存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它待删除记录的数据文件,从存储文件列表中删除相应的纪录。如果待删除文件列表中有文件ID相同的保留纪录,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件,从存储文件列表中删除相应的纪录。如果本群集待删除文件ID的排名不在前两位,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件。
如果其它群集发来的待删除文件查询结果列表中存在两个与待删除记录的文件ID相同的文件ID并且其中一个删除类型为待删除,根据文件ID在本群集的用户文件关联列表中查询其关联的用户数,与其它群集相同文件ID的关联用户数比较,如果本群集的关联用户数比其它群集的多并且待删除文件列表中没有文件ID相同的保留纪录,只有一条文件ID相同的待删除记录,不做任何处理。如果存在两条文件ID相同的待删除记录,则保留文件建立最晚的那台存储服务器上的数据文件,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它待删除记录的数据文件。如果待删除文件列表中有文件ID相同的保留纪录,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件,从存储文件列表中删除相应的纪录。如果本群集的关联用户数少于其它群集,根据待删除纪录的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除所有待删除记录的数据文件。
管理服务器的服务器资源管理模块按照统一规定的时间t1检查存储文件列表与群集内的存储服务器的存储文件列表的一致性,在确认管理服务器的群集存储文件列表与各存储服务器的文件列表一致后,将群集存储文件列表中标识为有效存储的文件ID挑选出来,生成有效存储文件查询列表发给其它群集的管理服务器查询。
管理服务器收到有效存储文件查询列表后通过服务器资源管理模块查询本群集的存储文件列表,如发现文件ID相同且存储类型标识为有效存储的数据文件,查询用户文件关联列表获得其关联的用户数并根据数据文件访问列表统计其在T时段的访问次数后,生成有效存储文件查询结果列表发回发出查询的群集管理服务器。有效存储文件查询结果列表包括查到的有效存储文件ID、文件访问次数、用户关联数和文件建立时间。如本群集的存储文件列表的有效存储类型中没有查询表列出的文件,管理服务器将空的有效存储文件查询结果列表发回发出查询的管理服务器。
管理服务器的服务器资源管理模块在收到其它群集发来的有效存储文件查询结果列表后,检查存储文件列表中标识为有效存储的文件ID在全部群集中是否大于2?如小于或等于2,不作任何处理。如大于2,检查该文件ID的访问次数,如果在本群集该文件ID的访问次数不等于0,则在群集和存储有该文件的存储服务器的存储文件列表中将该文件ID的存储类型从有效存储改为缓存;如在本群集的访问次数为0,再检查访问次数为0的该文件ID在全部群集中是否大于2?如小于或等于2,不作任何处理。否则检查本群集该文件ID的关联用户数和文件创立时间并与其它群集发来的全部待删除文件查询结果列表一起按关联用户数排序,关联用户数多的排在前面。如关联用户数相同则按文件建立时间排序,文件建立时间晚的排在前面。如果本群集文件ID的排名在前二位不做任何处理。如果存在两条文件ID相同的记录,则保留文件建立最晚的那台存储服务器上的数据文件,根据群集存储文件列表的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除其它数据文件,从存储文件列表中删除相应的纪录。如果本群集文件ID的排名不在前两位,根据群集存储文件列表的存储服务器ID和文件ID通知存储服务器存储管理模块从存储服务器上删除对应的数据文件。
管理服务器的服务器资源管理模块按照统一规定的时间t2检查本集群文件列表的文件校验码,如发现存在文件校验码相同而文件名不同的文件,比较这些文件的建立时间,在本集群所有的相关列表中将文件时间建立较晚的文件ID全部改为文件建立时间最早的那个文件的ID,文件名均作为此文件ID的别名记入该文件ID对应的文件名列表中。
Claims (42)
1.一种基于服务器群集的数据文件存储、分发和应用的系统,包括:
分布在互联网上的多个服务器群集,每个所述服务器群集包括多台部署在城域网或局域网上的服务器,所述服务器可分为管理服务器、应用服务器和存储服务器;所述群集内的服务器之间通过城域网或局域网连接,不同城域网的服务器群集之间通过互联网或广域网联接;
其特征在于,所述服务器群集分布在最接近用户的位置,通过城域网、接入网或局域网与用户的客户机连接;
所述管理服务器负责本群集的管理,包括服务器、用户、数据文件、应用程序的管理和与其它群集的通讯与协同;
所述应用服务器运行应用软件并通过网络向用户提供应用服务;
以及
所述存储服务器提供存储空间用于存储和分发数据文件。
2.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述服务器群集的数量可根据需求部署并动态扩展,互为备份。
3.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述服务器群集内的服务器数量可根据需求部署并动态扩展,互为备份。
4.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述管理服务器、所述应用服务器和所述存储服务器既能在不同的服务器硬件上实现,也能在同一台服务器硬件上通过逻辑划分实现。
5.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述服务器群集的存储服务器具有分配给用户的存储空间供用户下载和上传数据文件;用户下载数据文件存储到存储服务器的存储空间后再在用户的客户机上使用存储在存储服务器上的数据文件;用户也能够上传数据文件到分配给用户的存储服务器的存储空间后,再根据其他用户的下载和使用请求分发到其它存储服务器的存储空间供其他用户使用。
6.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述管理服务器具有服务器资源管理模块,通过所述服务器资源管理模块对群集内的服务器资源进行管理。
7.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述管理服务器具有群集间通讯模块,通过所述群集间通讯模块与其它服务器群集进行通讯和协同。
8.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述管理服务器具有用户管理模块,通过所述用户管理模块管理本群集的全部用户。
9.根据权利要求8所述的数据文件存储、分发和应用的系统,其中,所述管理服务器的用户管理模块在用户登录后根据用户的请求、权限、所在位置以及应用服务器和存储服务器的运行状态和资源使用情况为用户分配相应的服务器;应用服务器和存储服务器接受管理服务器分配的任务后根据用户名、请求、时间和使用的资源信息生成密钥通过管理服务器发送给用户,用户使用此密钥与应用服务器和存储服务器建立连接从而获得需要的服务和资源。
10.根据权利要求8所述的数据文件存储、分发和应用的系统,其中,所述用户使用的文件目录由所述管理服务器根据用户的已下载文件列表及已上传文件列表确定,已上传文件列表包括本群集和其它群集用户上传的文件,所述用户管理模块按照规定的条件和权限确定如何向用户发布使用的文件目录和系统资源。
11.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述应用服务器为用户提供应用服务,在所述应用服务器上运行应用程序而不占用或少占用用户的客户机资源。
12.根据权利要求11所述的数据文件存储、分发和应用的系统,其中,所述应用服务器包括数据文件的下载模块、上传模块、发布模块、分发模块、管理和应用模块以及文件校验码生成校验模块。
13.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的所述下载模块根据相关协议和许可从互联网的其它服务器或客户机下载数据文件到存储服务器;如果下载模块在文件列表中未能找到用户要下载的文件,下载模块根据存储数据文件的源点使用的协议从源点下载数据文件到存储服务器,调用文件校验码生成校验模块对文件进行完整性检查并生成校验码,根据文件的相关信息在文件列表中添加此文件的纪录并将用户与该文件关联后在用户的已下载文件列表中加入此文件。
14.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的上传模块按照用户的请求从用户的客户机上传数据文件到存储服务器并将该文件加入用户的上传文件列表,按照用户的要求确定文件可供查询和分发的范围和权限。
15.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的所述发布模块根据文件列表向用户发布可供下载或使用的文件信息供用户下载和使用,除了文件列表中列出的文件外,用户也能够直接提交下载的文件信息和下载地址;
所述发布模块还提供搜索工具供用户查找下载的资源。
16.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的所述分发模块负责群集内和群集间的数据分发,根据用户的请求和系统的负载将数据文件分发到存储服务器的缓存空间中以实现负载均衡的目的。
17.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的所述文件校验码生成校验模块按照指令对指定文件进行完整性和唯一性检查,如果文件还没有校验码,则文件校验码生成校验模块将为文件生成新的校验码。
18.根据权利要求12所述的数据文件存储、分发和应用的系统,其中,所述应用服务器管理和应用模块让用户通过已下载文件列表和上传文件列表使用和管理用户下载或上传到存储服务器中的数据文件。
19.根据权利要求18所述的数据文件存储、分发和应用的系统,其中,所述应用服务器的管理和应用模块包括播放、浏览、下载应用子模块,用户能够调用这些子模块播放、浏览或使用文件列表或已下载文件列表里的数据文件,也能够根据权限通过下载子模块将文件列表或已下载文件列表里供用户下载到客户机的数据文件下载到客户机后再使用。
20.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述存储服务器提供数据文件的存储和分发服务,存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,使得本集群存储服务器所存储数据文件的数量在能够满足用户需求的同时存储空间得到有效的利用。
21.根据权利要求1所述的数据文件存储、分发和应用的系统,其中,所述存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块和群集间通讯模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,根据从其它群集获得的信息使得整个系统所有存储服务器存储的数据文件数量能够满足用户需求并且存储空间得到有效的利用。
22.一种基于服务器群集的数据文件存储、分发和应用的方法,包括:
分布在互联网上的多个服务器群集,每个所述服务器群集包括多台部署在城域网或局域网上的服务器,所述服务器分为管理服务器、应用服务器和存储服务器;所述群集内的服务器之间通过城域网或局域网连接,不同城域网的服务器群集之间通过互联网或广域网联接;
其特征在于,所述服务器群集分布在最接近用户的位置,通过城域网、接入网或局域网与用户的客户机连接;
所述管理服务器负责本群集的管理,包括服务器、用户、数据文件、应用程序的管理和与其它群集的通讯与协同;
所述应用服务器运行应用软件并通过网络向用户提供应用服务;以及
所述存储服务器提供存储空间用于存储和分发数据文件。
23.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述服务器群集的数量根据需求部署并动态扩展,互为备份。
24.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述服务器群集内的服务器数量根据需求部署并动态扩展,互为备份。
25.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述管理服务器、所述应用服务器和所述存储服务器既能够在不同的服务器硬件上实现,也能够在同一台服务器硬件上通过逻辑划分实现。
26.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述服务器群集的存储服务器具有分配给用户的存储空间供用户下载和上传数据文件;用户下载数据文件存储到存储服务器的存储空间后再在用户的客户机上使用存储在存储服务器上的数据文件;用户也能够上传数据文件到分配给用户的存储服务器的存储空间后,再根据其他用户的下载和使用请求分发到其它存储服务器的存储空间供其他用户使用。
27.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述管理服务器具有服务器资源管理模块,通过所述服务器资源管理模块对群集内的服务器资源进行管理。
28.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述管理服务器具有群集间通讯模块,通过所述群集间通讯模块与其它服务器群集进行通讯和协同。
29.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述管理服务器具有用户管理模块,通过所述用户管理模块管理本群集的全部用户。
30.根据权利要求29所述的数据文件存储、分发和应用的方法,其中,所述管理服务器的用户管理模块在用户登录后根据用户的请求、权限、所在位置以及应用服务器和存储服务器的运行状态和资源使用情况为用户分配相应的服务器;应用服务器和存储服务器接受管理服务器分配的任务后根据用户名、请求、时间和使用的资源信息生成密钥通过管理服务器发送给用户,用户使用此密钥与应用服务器和存储服务器建立连接从而获得需要的服务和资源。
31.根据权利要求29所述的数据文件存储、分发和应用的系统,其中,所述用户使用的文件目录由所述管理服务器根据用户的已下载文件列表及已上传文件列表确定,已上传文件列表包括本群集和其它群集用户上传的文件,所述用户管理模块按照规定的条件和权限确定如何向用户发布使用的文件目录和系统资源。
32.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述应用服务器为用户提供应用服务,在所述应用服务器上运行应用程序而不占用或少占用用户的客户机资源。
33.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器包括数据文件的下载模块、上传模块、发布模块、分发模块、管理和应用模块以及文件校验码生成校验模块。
34.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的下载模块根据相关协议和许可从互联网的其它服务器或客户机下载数据文件到存储服务器;如果下载模块在文件列表中未能找到用户要下载的文件,下载模块根据存储数据文件的源点使用的协议从源点下载数据文件到存储服务器;调用文件校验码生成校验模块对文件进行完整性检查并生成校验码;根据文件的相关信息在文件列表中添加此文件的纪录并将用户与该文件关联后在用户的已下载文件列表中加入此文件。
35.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的上传模块按照用户的请求从用户的客户机上传数据文件到存储服务器并将该文件加入用户的上传文件列表,按照用户的要求确定文件供查询和分发的范围和权限。
36.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的发布模块根据文件列表向用户发布供下载或使用的文件信息供用户下载和使用,除了文件列表中列出的文件外,用户也直接提交下载的文件信息和下载地址;
所述发布模块还提供搜索工具供用户查找下载的资源。
37.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的分发模块负责群集内和群集间的数据分发,根据用户的请求和系统的负载将数据文件分发到存储服务器的缓存空间中以实现负载均衡的目的。
38.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的文件校验码生成校验模块按照指令对指定文件进行完整性和唯一性检查,如果文件还没有校验码,则文件校验码生成校验模块将为文件生成新的校验码。
39.根据权利要求32所述的数据文件存储、分发和应用的方法,其中,所述应用服务器管理和应用模块让用户通过已下载文件列表和上传文件列表使用和管理用户下载或上传到存储服务器中的数据文件。
40.根据权利要求39所述的数据文件存储、分发和应用的方法,其中,所述应用服务器的管理和应用模块包括播放、浏览、下载应用子模块,用户调用这些子模块播放、浏览或使用文件列表或已下载文件列表里的数据文件,也能够根据权限通过下载子模块将文件列表或已下载文件列表里供用户下载到客户机的数据文件下载到客户机后再使用。
41.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述存储服务器提供数据文件的存储和分发服务,存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,使得本集群存储服务器所存储数据文件的数量在能够满足用户需求的同时存储空间得到有效的利用。
42.根据权利要求22所述的数据文件存储、分发和应用的方法,其中,所述存储服务器存储管理模块运行在存储服务器上并在本群集管理服务器的服务器资源管理模块和群集间通讯模块的控制下与应用服务器的分发模块和管理与应用模块协同工作,根据从其它群集获得的信息使得整个系统所有存储服务器存储的数据文件数量能够满足用户需求并且存储空间得到有效的利用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100980470A CN101355476B (zh) | 2008-05-23 | 2008-05-23 | 一种基于服务器群集的数据文件存储、分发和应用的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100980470A CN101355476B (zh) | 2008-05-23 | 2008-05-23 | 一种基于服务器群集的数据文件存储、分发和应用的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101355476A CN101355476A (zh) | 2009-01-28 |
CN101355476B true CN101355476B (zh) | 2011-05-11 |
Family
ID=40308081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100980470A Expired - Fee Related CN101355476B (zh) | 2008-05-23 | 2008-05-23 | 一种基于服务器群集的数据文件存储、分发和应用的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101355476B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014067434A1 (zh) | 2012-10-31 | 2014-05-08 | 中国银联股份有限公司 | 一种文件传送方法及其系统 |
CN104750738A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团公司 | 一种更新数据信息的方法、数据节点、管理节点及系统 |
CN107408126A (zh) * | 2015-01-30 | 2017-11-28 | 甲骨文国际公司 | 用于集群中的基于联接的查询处理的工作负载感知的数据放置 |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101997885B (zh) * | 2009-08-18 | 2014-07-30 | 联想(北京)有限公司 | 一种用户数据调度方法、服务器及数据中心 |
US8812799B2 (en) | 2009-12-11 | 2014-08-19 | International Business Machines Corporation | Cluster families for cluster selection and cooperative replication |
CN101815084B (zh) * | 2009-12-31 | 2012-11-07 | 优视科技有限公司 | 一种用于用户终端文件管理系统及其应用方法 |
CN101877008A (zh) * | 2010-05-27 | 2010-11-03 | 开心人网络科技(北京)有限公司 | 一种海量小文件的存储方法及装置 |
TWI447584B (zh) | 2010-11-01 | 2014-08-01 | Inst Information Industry | 多人共享之網路儲存服務系統與方法 |
CN102480508B (zh) * | 2010-11-26 | 2014-11-05 | 财团法人资讯工业策进会 | 多用户共享的网络储存服务系统与方法 |
CN102546677B (zh) * | 2010-12-08 | 2015-02-04 | 上海遥薇(集团)有限公司 | 一种大量实时数据存储系统 |
CN102075358B (zh) * | 2010-12-31 | 2013-10-30 | 网宿科技股份有限公司 | 针对大规模服务器集群的内容分发和部署的系统和方法 |
CN102638481B (zh) * | 2011-02-15 | 2017-04-05 | 英大传媒投资集团有限公司 | 影音资料远程归档系统及其方法 |
CN102508736A (zh) * | 2011-10-11 | 2012-06-20 | 宇龙计算机通信科技(深圳)有限公司 | 通信终端中应用程序的备份方法及通信终端 |
CN102420863B (zh) * | 2011-11-30 | 2015-04-15 | 北京蓝汛通信技术有限责任公司 | 一种快速分发文件系统和方法及装置 |
CN102637287A (zh) * | 2012-03-18 | 2012-08-15 | 江苏新彩软件有限公司 | 一种互联网彩票大容量用户并发交易的动态负载均衡方法 |
CN103384237B (zh) * | 2012-05-04 | 2017-02-22 | 华为技术有限公司 | 一种共享IaaS业务云账号的方法、及共享平台和网络装置 |
CN102769582B (zh) * | 2012-08-02 | 2015-06-03 | 深圳中兴网信科技有限公司 | 逻辑服务器、即时通信系统和即时通信方法 |
CN103685341B (zh) * | 2012-08-31 | 2016-12-28 | 百度在线网络技术(北京)有限公司 | 云存储数据中心及云存储数据的提供方法 |
CN103685342B (zh) * | 2012-08-31 | 2018-01-09 | 百度在线网络技术(北京)有限公司 | 个人云存储数据中心和云数据存储的方法 |
CN103812909A (zh) * | 2012-11-14 | 2014-05-21 | 财团法人资讯工业策进会 | 云端储存服务下提供以文件为关联的社群互动方法及系统 |
CN103391456B (zh) * | 2013-07-19 | 2016-08-17 | 西安诺瓦电子科技有限公司 | 集群式播放控制系统、方法及其管理中心 |
CN103533402B (zh) * | 2013-10-23 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 视频通道管理方法和相关设备及通信系统 |
CN103747045A (zh) * | 2013-12-24 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种cdn服务器状态收集方法、cdn控制中心及系统 |
CN103731503B (zh) * | 2014-01-15 | 2017-03-08 | 西安诺瓦电子科技有限公司 | 文件发布系统以及服务器端 |
CN104283874A (zh) * | 2014-09-28 | 2015-01-14 | 小米科技有限责任公司 | 基于云服务器的数据权限控制方法及装置 |
CN105635931B (zh) * | 2014-11-04 | 2019-08-13 | 华为技术有限公司 | 一种资源访问的方法和装置 |
CN104506647B (zh) * | 2014-12-31 | 2017-12-08 | 北京奇艺世纪科技有限公司 | 一种数据存储系统及存储和访问方法 |
CN105915491A (zh) * | 2015-11-18 | 2016-08-31 | 乐视网信息技术(北京)股份有限公司 | 账号登录方法及装置 |
US10700884B2 (en) * | 2016-04-01 | 2020-06-30 | Nokia Technologies Oy | Method, apparatus and computer program product for data distribution |
CN106203157B (zh) * | 2016-06-30 | 2019-06-25 | 浪潮电子信息产业股份有限公司 | 支持全球工厂同步获取甲方公司工程技术文档的发布平台 |
CN108243206B (zh) * | 2016-12-23 | 2019-03-29 | 中科星图股份有限公司 | 一种服务器集群区域管理方法 |
CN106899693A (zh) * | 2017-03-20 | 2017-06-27 | 聚好看科技股份有限公司 | 分布式文件管理方法及设备 |
CN109257403B (zh) * | 2017-07-14 | 2022-01-18 | 杭州海康威视数字技术股份有限公司 | 数据存储方法及设备、分布式存储系统 |
CN107580232A (zh) * | 2017-09-28 | 2018-01-12 | 郑州云海信息技术有限公司 | 一种视频直播系统及方法 |
CN109688435A (zh) * | 2017-10-19 | 2019-04-26 | 上海勋云信息科技有限公司 | 视频点播备份方法、设备、视频点播处理系统及存储介质 |
CN109379419B (zh) * | 2018-10-09 | 2021-12-17 | 上海二三四五网络科技有限公司 | 一种基于私人云盘的cdn加速服务控制方法及控制装置 |
CN109508095A (zh) * | 2018-12-29 | 2019-03-22 | 北京强氧新科信息技术有限公司 | 一种虚拟现实视频的合成方法及装置 |
CN112416375A (zh) * | 2020-11-19 | 2021-02-26 | 深圳市德普光业科技有限公司 | 一种软件分发安装方法、系统及存储介质 |
CN114024945A (zh) * | 2021-11-03 | 2022-02-08 | 深圳市高德信通信股份有限公司 | 一种基于IPv6的移动终端实时多媒体数据流传输系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1107533A2 (en) * | 1999-11-09 | 2001-06-13 | Matsushita Electric Industrial Co., Ltd. | Load distribution in a network |
EP1094645B1 (en) * | 1999-10-21 | 2005-12-28 | Sun Microsystems, Inc. | Method and apparatus for providing scalable services using a packet distribution table |
CN1308278C (zh) * | 2005-10-13 | 2007-04-04 | 广西大学 | 以桂枝叶、桂皮为原料直接生产天然苯甲醛的方法 |
CN1996843A (zh) * | 2005-12-26 | 2007-07-11 | 北大方正集团有限公司 | 轻量级分布式文件存储系统及文件上传的方法 |
-
2008
- 2008-05-23 CN CN2008100980470A patent/CN101355476B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1094645B1 (en) * | 1999-10-21 | 2005-12-28 | Sun Microsystems, Inc. | Method and apparatus for providing scalable services using a packet distribution table |
EP1107533A2 (en) * | 1999-11-09 | 2001-06-13 | Matsushita Electric Industrial Co., Ltd. | Load distribution in a network |
CN1308278C (zh) * | 2005-10-13 | 2007-04-04 | 广西大学 | 以桂枝叶、桂皮为原料直接生产天然苯甲醛的方法 |
CN1996843A (zh) * | 2005-12-26 | 2007-07-11 | 北大方正集团有限公司 | 轻量级分布式文件存储系统及文件上传的方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014067434A1 (zh) | 2012-10-31 | 2014-05-08 | 中国银联股份有限公司 | 一种文件传送方法及其系统 |
CN104750738A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团公司 | 一种更新数据信息的方法、数据节点、管理节点及系统 |
CN107408126A (zh) * | 2015-01-30 | 2017-11-28 | 甲骨文国际公司 | 用于集群中的基于联接的查询处理的工作负载感知的数据放置 |
Also Published As
Publication number | Publication date |
---|---|
CN101355476A (zh) | 2009-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101355476B (zh) | 一种基于服务器群集的数据文件存储、分发和应用的系统和方法 | |
CN110213352B (zh) | 名字空间统一的分散自治存储资源聚合方法 | |
US8983983B2 (en) | State operating system | |
Chan et al. | Distributed servers architecture for networked video services | |
US7272613B2 (en) | Method and system for managing distributed content and related metadata | |
CN101631143B (zh) | 负载均衡环境中多服务器系统及其文件传输方法 | |
CN101136932B (zh) | 一种集群式流媒体组网系统及其内容发布和服务方法 | |
CN111049884A (zh) | 一种分布式大文件存储系统及文件上传和下载方法 | |
US20060190576A1 (en) | Scheduling method of advertisement/broadcasting and management system and method | |
US8099402B2 (en) | Distributed data storage and access systems | |
US7342928B2 (en) | Method and system for accessing a peer-to-peer network | |
US20020083118A1 (en) | Method and apparatus for managing a plurality of servers in a content delivery network | |
US8239507B2 (en) | System and method for providing service | |
CN107888666A (zh) | 一种跨地域数据存储系统以及数据同步方法和装置 | |
CN102420863B (zh) | 一种快速分发文件系统和方法及装置 | |
CA2594716C (en) | Video and multimedia distribution system | |
CN108574666B (zh) | 一种数据流调度方法、装置和系统 | |
CN105068755A (zh) | 一种面向云计算内容分发网络的数据副本存储方法 | |
CN1905670A (zh) | 基于网格技术的视频点播直播的实现方法和设备 | |
CN110019359A (zh) | 一种防止缓存击穿的方法、装置及系统 | |
CN105516343A (zh) | 一种网络动态自组织的文件共享系统及实现方法 | |
CA2481428A1 (en) | Method and system for distributing data | |
CN101242228B (zh) | 交互式网络电视系统的应急方法和系统 | |
CN112612494B (zh) | 一种版本更新管理方法和相关装置 | |
Zhao et al. | Design and implementation of streaming media server cluster based on FFMpeg |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C57 | Notification of unclear or unknown address | ||
DD01 | Delivery of document by public notice |
Addressee: Hou Liqing Document name: Notification of Passing Preliminary Examination of the Application for Invention |
|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
DD01 | Delivery of document by public notice |
Addressee: Hou Liqing Document name: Notification of Passing Examination on Formalities |
|
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: 20110511 Termination date: 20210523 |
|
CF01 | Termination of patent right due to non-payment of annual fee |