CN113014533B - 校验文件的处理方法、装置及系统、存储介质、电子装置 - Google Patents

校验文件的处理方法、装置及系统、存储介质、电子装置 Download PDF

Info

Publication number
CN113014533B
CN113014533B CN201911329231.6A CN201911329231A CN113014533B CN 113014533 B CN113014533 B CN 113014533B CN 201911329231 A CN201911329231 A CN 201911329231A CN 113014533 B CN113014533 B CN 113014533B
Authority
CN
China
Prior art keywords
file
target
media file
target media
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911329231.6A
Other languages
English (en)
Other versions
CN113014533A (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
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201911329231.6A priority Critical patent/CN113014533B/zh
Publication of CN113014533A publication Critical patent/CN113014533A/zh
Application granted granted Critical
Publication of CN113014533B publication Critical patent/CN113014533B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种校验文件的处理方法、装置及系统、存储介质、电子装置。其中,该方法包括:从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;生成目标媒体文件的校验文件;保存目标媒体文件的校验文件至存储系统;在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。本申请解决了相关技术中智能终端在校验过程中资源消耗较多的技术问题。

Description

校验文件的处理方法、装置及系统、存储介质、电子装置
技术领域
本申请涉及数据校验领域,具体而言,涉及一种校验文件的处理方法、装置及系统、存储介质、电子装置。
背景技术
互联网(Internet),是由一些使用公用语言互相通信的计算机连接而成的全球网络,即广域网、局域网及单机按照一定的通讯协议组成的国际计算机网络。互联网是一种公用信息的载体,这种大众传媒比以往的任何一种通讯媒体都要快。随着互联网的发展,用户对基于互联网的媒体数据的需求越来越大,如互联网视频、互联网教育、互联网会议等。
在传输上述基于互联网的多媒体内容时,需要在用户端对多媒体内容的正确性进行验证,验证过程中会占用用户终端的较多资源。例如,对于PCDN网络中传输视频文件而言,NAT穿透是其中一个重要的步骤,NAT穿透中常用的协议是UDP协议,UDP协议是一种无连接的不可靠传输协议,对于这种不可靠的传输,对于验证视频文件数据传输是否具有完整性和正确性是很重要的,常用的数据完整性校验方式就是在发送数据对等端(记为分享端,可为手机、平板、电脑等智能终端)对接收到的数据进行计算生成一个校验和,然后合着数据一起发送到数据请求端(可为手机、平板、电脑等智能终端),请求端在收到数据和校验和后,再对原始数据计算一个校验和,通过对比接收到的校验和与计算出的校验和对从用户端收到的数据进行校验。
在上述方案中,存在如下缺陷:分享端和请求端都需要对校验和进行计算,增加了数据计算复杂度及资源消耗;传输前对校验和进行的复杂计算增大了时间消耗,会加大视频文件传输的延迟,降低用户体验;由于分享端向请求端传输数据时,除了传输所请求的数据外还需要传输校验和文件,加大了传输数据量;同时,传输过程中的校验和数据丢失、使用UDP协议传输数据以及分享端发送的媒体数据及校验信息本身具有不可靠性,这三种原因会导致数据验证不可靠性;不可靠性数据校验也会大大降低用户播放质量。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种校验文件的处理方法、装置及系统、存储介质、电子装置,以至少解决相关技术中智能终端在校验过程中资源消耗较多的技术问题。
根据本申请实施例的一方面,提供了一种校验文件的处理方法,包括:从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;生成目标媒体文件的校验文件;保存目标媒体文件的校验文件至存储系统;其中,在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了一种校验文件的处理方法,包括:获取第一终端的第一请求,其中,第一请求用于请求获取目标媒体文件的校验文件;响应于第一请求,将目标媒体文件的校验文件发送给第一终端,其中,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了一种校验文件的处理方法,包括:向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件;接收存储系统返回的目标媒体文件的校验文件;在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了校验文件的处理装置,包括:第一获取单元,用于从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;生成单元,用于生成目标媒体文件的校验文件;保存单元,用于保存目标媒体文件的校验文件至存储系统;其中,在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了校验文件的处理装置,包括:第二获取单元,用于获取第一终端的第一请求,其中,第一请求用于请求获取目标媒体文件的校验文件;第一发送单元,用于响应于第一请求,将目标媒体文件的校验文件发送给第一终端,其中,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了校验文件的处理装置,包括:第二发送单元,用于向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件;接收单元,用于接收存储系统返回的目标媒体文件的校验文件;校验单元,用于在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了校验文件的处理系统,包括:存储系统,存储系统用于存储媒体文件;第二终端,第二终端上保存有来源于存储系统的目标媒体文件;校验系统,校验系统用于生成目标媒体文件的校验文件;第一终端,第一终端用于利用校验系统生成的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的方法。
根据本申请实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的方法。
在本申请实施例中,是通过校验系统生成校验文件,而不是通过数据传输的双方(如作为分享端的第二终端和作为请求端的第一终端)来生成校验文件,可以解决相关技术中智能终端在校验过程中资源消耗较多的技术问题,由于媒体文件的校验文件是在被请求前在校验系统中预先生成,从而避免了校验过程中复杂计算的时间消耗和由此带来的传输延迟;另外,由于校验文件是校验系统预先生成的,从而不需要在校验过程中在分享端和请求端之间传输校验文件,减少了传输数据量,同时避免了校验和数据丢失导致的数据验证不可靠性的问题;与此同时,由于校验文件是校验系统预先生成的,且建立了校验文件与媒体文件之间的关联,采用这种计算落地的方式,得到的校验文件在有效期内可以重复利用(即所有终端在对目标媒体文件进行校验时获取的是同一校验文件),避免了产生很多重复性计算。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的校验文件的处理方法的硬件系统的示意图;
图2是根据本申请实施例的一种可选的校验文件的处理方法的流程图;
图3是根据本申请实施例的一种可选的校验文件的处理方法的流程图;
图4是根据本申请实施例的一种可选的校验文件的处理方法的流程图;
图5是根据本申请实施例的一种可选的硬件架构的示意图;
图6是根据本申请实施例的一种可选的校验文件的处理装置的示意图;
图7是根据本申请实施例的一种可选的校验文件的处理装置的示意图;
图8是根据本申请实施例的一种可选的校验文件的处理装置的示意图;
以及
图9是根据本申请实施例的一种终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
NAT穿越(NAT traversal)涉及TCP/IP网络中的一个常见问题,即在处于使用了NAT设备的私有TCP/IP网络中的主机之间建立连接的问题。
p2p技术,一般指点对点技术,又称对等互联网络技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。
UDP,Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol),UDP为应用程序提供了一种无需建立连接就可以发送封装的IP数据报的方法。
根据本申请实施例的一方面,如图1所示,提供了一种校验文件的处理系统的系统实施例,该系统包括:通过网络互连的存储系统101、校验系统103、第一终端105以及第二终端107。其中,校验系统103用于生成目标媒体文件的校验文件,并发送给存储系统101;存储系统101可用于为终端或终端上安装的客户端提供服务(如向终端提供该终端请求的目标媒体文件的媒体服务),存储系统上保存有存在关联关系的媒体文件和媒体文件的校验文件;第一终端为当前请求获取目标媒体文件的终端,第二终端为从其他终端或者从存储系统获取到了目标媒体文件的终端,在第一终端从第二终端获取目标媒体文件时,为了鉴别第二终端上目标媒体文件的正确性和完整性,可利用从存储系统获取的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对待下载的目标媒体文件进行校验。
需要说明的是,上述第二终端从存储系统获取目标媒体文件时可以通过CDN从存储系统中获取该目标媒体文件,以加速目标媒体文件获取的速度。
根据本申请实施例的另一方面,还提供了一种校验文件的处理方法的方法实施例。本申请实施例的校验文件的处理方法可由存储系统101来执行,也可以由校验系统103来执行,还可以是由第一终端105执行。其中,第一终端105执行本申请实施例的校验文件的处理方法也可以是由安装在其上的客户端来执行。
图2是根据本申请实施例的一种可选的校验文件的处理方法的流程图,如图2所示,该方法可以由校验系统来执行,包括以下步骤:
步骤S202,校验系统从存储系统获取目标媒体文件,存储系统用于存储媒体文件。
上述校验系统包括至少一个设备(如塔式服务器、刀片机服务器等),当校验系统包括多个设备时,校验系统可以是个分布式系统;上述媒体文件为可以在智能终端播放的视频、音频、电子杂志等。
步骤S204,校验系统生成目标媒体文件的校验文件。
步骤S206,校验系统保存目标媒体文件的校验文件至存储系统;在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
在本申请的技术方案中,是通过校验系统生成校验文件,而不是通过数据传输的双方(如作为分享端的第二终端和作为请求端的第一终端)来生成校验文件,可以解决相关技术中智能终端在校验过程中资源消耗较多的技术问题,由于媒体文件的校验文件是在被请求前在校验系统中预先生成,从而避免了校验过程中复杂计算的时间消耗和由此带来的传输延迟;另外,由于校验文件是校验系统预先生成的,从而不需要在校验过程中在分享端和请求端之间传输校验文件,减少了传输数据量,同时避免了校验和数据丢失导致的数据验证不可靠性的问题;与此同时,由于校验文件是校验系统预先生成的,且建立了校验文件与媒体文件之间的关联,采用这种计算落地的方式,得到的校验文件在有效期内可以重复利用(即所有终端在对目标媒体文件进行校验时获取的是同一校验文件),避免了产生很多重复性计算。
针对之前提及的各种问题及不足,本申请提供了基于服务端集中式计算的一套解决系统(即上述校验系统),本申请的校验系统可以从功能上分为三个核心模块,任务生产者模块TaskProducer,任务分发者模块TaskDispatch,任务工作者模块TaskWork。下面结合图2所示的步骤进一步详述本申请的技术方案。
在步骤S202提供的技术方案中,校验系统从存储系统获取目标媒体文件,存储系统用于存储媒体文件。
可选地,任务生产者模块可接入任何存放视频文件等媒体文件并支持读写的源(即上述的存储系统,该存储系统可以是分布式的云存储、数据库等),上述目标媒体文件所在的源为接入了任务生产者模块的源,任务生产者模块在接收到第一请求时,生成相应的生成任务,以便于任务分发者模块进行处理。
在步骤S204提供的技术方案中,校验系统生成目标媒体文件的校验文件。
可选地,目标媒体文件的校验文件包括:携带有目标媒体文件的修改时间的字段、携带有目标媒体文件的实体标识的字段以及携带有目标媒体文件的文件大小的字段;相应地,目标媒体文件的文件信息包括:目标媒体文件的修改时间、目标媒体文件的实体标识以及目标媒体文件的文件大小。在验证时,请求端就可以利用从存储系统获取的校验文件中的如上几个字段与分享端的媒体文件的文件信息中的这几个信息进行对比,看是否均相同,如果均相同,则可认为分享端的媒体文件即所需的目标媒体文件。
可选地,校验文件还包括:携带有目标媒体文件的存储路径的字段、携带有目标媒体文件采用的校验方案的字段、携带有目标媒体文件的分片大小的字段以及携带有目标媒体文件的分片的校验和的字段;目标媒体文件的校验信息包括:目标媒体文件的分片的校验和,文件信息用于对目标媒体文件的正确性进行验证(也即通过文件信息可以验证待下载的媒体文件是否为用户所需的目标媒体文件),校验信息用于对目标媒体文件的完整性进行验证,对目标媒体文件的各个分片的完整性进行验证,防止媒体文件出现数据缺少、数据错误。校验时,请求端采用相应地校验方案对接收到的分片计算出校验和,以与从存储系统获取的校验文件中的校验和进行比对,如果均匹配则可认为接收到的分片时完整的。
可选地,在生成目标媒体文件的校验文件时,可以按照步骤S2042-步骤S2046执行:
步骤S2042,任务生产者模块TaskProducer为目标媒体文件创建校验文件的目标生成任务,并将目标生成任务和目标生成任务的第一属性保存至第一数据中,其中,第一属性用于指示目标媒体文件的存储地址和处理优先级,第一数据(该数据可以数据表的形式存在)用于保存待分配的生成任务。
可选地,任务生产者模块按媒体文件的数量对应生成相同数量的生成任务,并把任务基础属性(即第一属性)写入数据库的InitTask表(记为第一数据),用于视频等媒体文件的预处理(可称为一级处理)。
步骤S2044,任务分发者模块TaskDispatch,在第一属性指示的处理优先级达到目标优先级的情况下,将目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将目标生成任务和目标生成任务的第二属性保存至第二数据(该数据可以数据表的形式存在)中,其中,第二属性用于指示目标生成任务的处理状态。
任务分发者模块根据优先级(如取优先级最高的、或者优先级大于某个等级的)从数据库InitTask表读取预生成的任务,写入TaskProcess表(记为第二数据),并在表中记录处理状态,将任务分发给目标任务生成模块(可称为二级处理),需要说明的是,此处的目标生成任务可以为多个,那么每个任务可被分配给一个目标任务生成模块,任意两个任务分配的目标任务生成模块可以不同。
步骤S2046,目标任务生成模块(即任务工作者模块TaskWork)生成目标媒体文件的校验文件。
可选地,在目标任务生成模块生成目标媒体文件的校验文件时,可按照InitTask表中目标媒体文件的存储地址获取目标媒体文件的文件信息;在按照目标媒体文件的存储地址获取目标媒体文件的文件信息之后,在获取的目标媒体文件的文件信息与第一数据中保存的目标媒体文件的文件信息不匹配的情况下,取消执行生成目标媒体文件的校验文件的步骤;在获取的目标媒体文件的文件信息与第一数据中保存的目标媒体文件的文件信息匹配的情况下,生成目标媒体文件的校验文件。
在该实施例中,目标任务生成模块生成目标媒体文件的校验文件时,可以按照如下约束执行:在不存在与目标媒体文件关联的校验文件的情况下,为目标媒体文件创建校验文件的文件生成任务(该任务相当于限定了生成多个字段的校验文件的具体过程);或,在存在与目标媒体文件关联的校验文件且与目标媒体文件关联的校验文件已经超过有效期(可以预先设定校验文件的有效期为固定值,如一周)的情况下,为目标媒体文件创建校验文件的文件生成任务。
任务工作者模块根据分发过来的任务,首先请求任务源视频文件,然后计算请求获取的源视频文件的校验和,计算完成后生成对应的校验和文件(或称校验文件)。
可选地,在通过目标任务生成模块生成目标媒体文件的校验文件之后,可根据目标任务生成模块的执行结果在TaskProcess表中更新目标生成任务的第二属性指示的处理状态(如处理成功、处理失败等),类似地,也可对InitTask表中任务的状态进行同步。
在步骤S206提供的技术方案中,保存目标媒体文件的校验文件至存储系统,在第一终端向媒体内容提供商请求视频时,发现与第一终端较近(如位于相同局域网)的第二终端上有该视频,为了确保第二终端上该视频的真实性和准确性,可以利用存储系统保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息来进行校验。
可选地,保存目标媒体文件的校验文件可以通过如下方式实现:任务工作者模块向存储系统发送目标媒体文件的校验文件,通过存储系统将目标媒体文件的校验文件保存与目标媒体文件相同的存储地址下。也即任务工作者模块计算完成后生成对应校验和文件,把校验和文件上传到对应存储源,同时把任务工作结果反馈给任务分发者。
图3是根据本申请实施例的一种可选的校验文件的处理方法的流程图,如图3所示,该方法可以由存储系统来执行,包括以下步骤:
步骤S302,存储系统获取第一终端的第一请求,第一请求用于请求获取目标媒体文件的校验文件。
步骤S304,响应于第一请求,存储系统将目标媒体文件的校验文件发送给第一终端,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
可选地,在获取第一终端的第一请求之前,向校验系统发送第二请求,其中,第二请求用于请求为存储系统中的目标媒体文件生成校验文件;获取校验系统返回的目标媒体文件的校验文件,目标媒体文件的校验文件用于校验目标媒体文件;保存目标媒体文件的校验文件至存储系统。
图4是根据本申请实施例的一种可选的校验文件的处理方法的流程图,如图4所示,该方法可以由智能终端(即第一终端)来执行,包括以下步骤:
步骤S402,第一终端向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件。
步骤S404,第一终端接收存储系统返回的目标媒体文件的校验文件。
步骤S406,第一终端在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
在利用获取的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验之后(即校验是否为需要的那个媒体问题),在对第二终端上目标媒体文件进行的校验通过的情况下,再校验目标媒体文件的校验信息与校验文件中的校验信息是否匹配(即校验分片是否完整正确),在匹配的情况下,播放目标媒体文件。
上述媒体文件可以分片的形式传输,第一终端在从第二终端获取媒体文件的时候,存在两种获取方式:第一种是单独获取头文件(即携带有目标媒体文件的修改时间的字段、携带有目标媒体文件的实体标识的字段以及携带有目标媒体文件的文件大小的字段),第二种,获取头文件和一部分媒体分片。
第一种的情况下,第一终端获取头文件之后,先校验上述三个字段,校验通过后再从第二终端中下载媒体文件的片段,下载完成之后,利用校验文件中的校验方案和分片大小对下载的片段进行校验和的计算,得到一个校验和,与该校验文件中带着的校验和进行比较,如果通过,则播放该片段;第二种的情况下,除了获取到头文件之后还获取了部分媒体文件,可在这三个字段验证完成之后,再计算校验和,与该校验文件中带着的校验和进行比较验证,验证通过后进行播放。
采用上述技术方案,增加了验证的可靠性,减少了重复计算,同时作为服务集群(即验证系统)更具有可控性,提高了用户体验。下面结合具体的实施方案进一步详述本申请的技术方案。
图5所示为本申请技术方案的总体架构,左侧为外部接入源,对象存储服务是视频等媒体信息源存储服务(即存储系统)的接口,console是右侧服务的接口,右侧就是整个系统的设计架构,控制台服务器console-server(提供控制台管理服务)通过对外提供HTTP接口(console接口)接收来自外部系统下发的配置,然后把动态配置发布到分布式应用程序协调服务zookeeper,zookeeper再进行分发给订阅了该动态配置的各个服务,zookeeper除了同步动态配置,同时还会对各个服务间实时状态信息做一致性同步,虚线框内模块TaskProducer、TaskDispatch、TaskWork可作为本申请提供的技术方案的整个校验和系统核心。
任务生产者TaskProducer模块(此处的生产也可理解为生成)执行的流程包括:
步骤1,加载动态配置,动态配置包括是否开启P2P,bucket名(即根目录),文件类型,文件长度等,根据动态配置生成计算CRC文件(即校验文件)的生成任务,从指定配置的视频源存储源(该源支持读写)获取原始文件列表及相关属性,该请求是基于HTTP、HTTPS协议的,从而可以保证系统所有请求响应数据的可靠性。一种可选的目录结构示意如下:
bucket/
├──A(A表示视频等媒体文件的文件名字)
├──A.crc(表示媒体文件A的校验文件)
├──B(B表示视频等媒体文件的文件名字)
├──B.crc(表示媒体文件B的校验文件)
├──C(C表示视频等媒体文件的文件名字)
├──C.crc(表示媒体文件C的校验文件)
如上文件列表所示,原始文件以及CRC文件存储在同一存储源,这种情况下,由于CRC文件是系统计算生成的,非原始视频文件,而计算时只需要对原始视频文件进行计算,故而可对需要生成CRC文件的存储源做一个筛选处理,即筛掉所有以CRC结尾的文件。由于一般情况可能不会一次获取所有文件列表,所以对于同目录下所有文件遍历,需要有种策略标记已遍历过文件列表,保证下次获取到的文件列表是之前未获取的。对于新增文件的获取方式有两种,一种方式是TaskProducer定时获取,但是这种方式可能无法及时获取到更新的文件;另外一种方式就是存储服务(即存储系统)将有新增文件的消息主动推送给TaskProducer,保证任务的及时生产,并减少了不必要的请求。
步骤2,判断原文件是否存储有对应校验和文件,如果不存在,则直接把该文件的生成任务加入到数据库InitTask表,表示该文件需要进行CRC文件生产处理,如果存在CRC校验和文件,则判断CRC文件是否过期,如果过期,则需要重新生成CRC,删除已有过期的CRC文件,也即获取原始视频文件列表时要淘汰掉校验和文件,避免后续对校验和文件作计算,同时把该文件的生成任务加入数据库InitTask表,如果未过期则可不产生生成任务。同时可按文件创建时间来设置生成任务的优先级,文件创建时间离当前时间越近,表示此视频播放热度越高,优先级越高,需要优先处理此任务。
一种可选的InitTask表如下表1所示:
表1
Figure BDA0002329147600000141
任务分发者(TaskDispatch)模块执行的流程如下:
步骤1,按照优先级策略,从数据库InitTask表读取优先级最高任务,然后将任务写入TaskProcess表(用于记录及维护任务的状态),任务主要维护状态包括添加时间,处理时间,完成时间,任务处理状态(挂起,处理中,完成,失败等),处理任务的TaskWorker等,例如,此时写入TaskProcess表任务状态为挂起。
一种可选的TaskProcess表的示意如表2所示:
表2
Figure BDA0002329147600000142
Figure BDA0002329147600000151
步骤2,把从InitTask表中读取的高优先级(例如创建时间离当前时间越近的优先级越高)的任务进行消息格式化,并对任务进行分发,分发时为了保持任务分发的高效率,TaskDispatch模块和TaskWorker模块之间保持长连接,同时TaskWorker作为任务工作者,所有计算量可集中在TaskWorker模块上,此TaskWorker模块可为一个集群(如多个服务器),这里需要一个对TaskWorker进行负载均衡调度的策略,如TaskDispatch模块采用对TaskWorker的轮训策略进行任务分发调度,任务分发给某个TaskWorker的同时置该任务为处理中状态。
在使用长连接的情况下,TaskDispatch模块和TaskWorker模块之间用于传输数据的连接不会关闭,在二者之间再次发生数据传输行为时,会继续使用这一条已经建立的连接进行数据传输。
步骤3,根据实际环境对任务有不同的任务维护策略,本申请对任务维护策略不做限定,下文举了两个例子进行示意性说明,考虑到任务数量非常大,对于成功执行的任务可在服务空闲期定期(如一天)进行一次删除的策略;对于一直执行失败的任务(可能由于外部系统给了错误任务等),达到指定失败次数删除的策略。
任务工作者(TaskWorker)模块执行的流程包括:
步骤1,TaskWorker拿到待处理任务后,对视频源服务(即提供视频的存储系统或者提供视频服务的存储系统)发送HTTP HEAD请求,通过HEAD请求获得文件的oLastModified,oEtag,oSize属性,比较视频文件属性,判断表中oLastModified,oEtag,oSize文件属性与文件实际的是否相同,相同则表示验证成功,并发送HTTP GET请求获取视频源文件,然后按指定piece大小(即视频的分片大小)计算生成CRC文件,最后通过PUT请求回写生成的CRC文件;不同表示文件已更新,此任务失效,不进行计算生成CRC文件。
需要说明的是,由于InitTask表生成的任务是原视频文件,不会有CRC文件(因为在获取文件任务列表时筛掉了CRC文件)。上述比较是与服务端生成的CRC文件比较,因为有的任务从添加时到开始执行任务这段时间,原文件可能已经改变(文件改变会生成一条新的任务),那么这个时候就认为这条任务无效或者已过期。
步骤2,根据CRC文件的生产情况,无论成功或者失败,TaskWorker需要发送一个反馈给TaskDispatch模块,告知TaskDispatch模块对于任务的处理结果。
步骤3,TaskDispatch模块收到来自TaskWork模块的反馈,更新TaskProcess任务状态表,同时TaskDispatch模块会定时检查TaskProcess表的任务状态,对失败或者错误的任务进行重新派发或者删除等处理。
相关技术中的校验是在客户端做,本申请可在服务端进行,也就是总体架构中的上述的模块,将客户端校验和数据实时分散计算转移到服务端通过集群服务进行预计算,可以降低视频点播延时,提高视频文件验证可靠性,提高用户体验。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
根据本申请实施例的另一个方面,还提供了一种用于实施上述校验文件的处理方法的校验文件的处理装置。图6是根据本申请实施例的一种可选的校验文件的处理装置的示意图,如图6所示,该装置可以包括:
第一获取单元601,用于从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;
生成单元603,用于生成目标媒体文件的校验文件;
保存单元605,用于保存目标媒体文件的校验文件至存储系统;其中,在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
需要说明的是,该实施例中的第一获取单元601可以用于执行本申请实施例中的步骤S202,该实施例中的生成单元603可以用于执行本申请实施例中的步骤S204,该实施例中的保存单元605可以用于执行本申请实施例中的步骤S206。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中的校验系统,可以通过软件实现,也可以通过硬件实现。
可选地,目标媒体文件的校验文件可包括:携带有目标媒体文件的修改时间的字段、携带有目标媒体文件的实体标识的字段以及携带有目标媒体文件的文件大小的字段;目标媒体文件的文件信息包括:目标媒体文件的修改时间、目标媒体文件的实体标识以及目标媒体文件的文件大小。
可选地,校验文件还可包括:携带有目标媒体文件的存储路径的字段、携带有目标媒体文件采用的校验方案的字段、携带有目标媒体文件的分片大小的字段以及携带有目标媒体文件的分片的校验和的字段;目标媒体文件的校验信息包括:目标媒体文件的分片的校验和,其中,文件信息用于对目标媒体文件的正确性进行验证,校验信息用于对目标媒体文件的完整性进行验证。
可选地,生成单元还可用于:为目标媒体文件创建校验文件的目标生成任务,并将目标生成任务和目标生成任务的第一属性保存至第一数据中,其中,第一属性用于指示目标媒体文件的存储地址和处理优先级,第一数据用于保存待分配的生成任务;在第一属性指示的处理优先级达到目标优先级的情况下,将目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将目标生成任务和目标生成任务的第二属性保存至第二数据中,其中,第二属性用于指示目标生成任务的处理状态;通过目标任务生成模块生成目标媒体文件的校验文件。
可选地,生成单元还可用于:在通过目标任务生成模块生成目标媒体文件的校验文件之前,在不存在与目标媒体文件关联的校验文件的情况下,为目标媒体文件创建校验文件的文件生成任务,其中,文件生成任务为待目标任务生成模块执行的任务;或,在存在与目标媒体文件关联的校验文件且与目标媒体文件关联的校验文件已经超过有效期的情况下,为目标媒体文件创建校验文件的文件生成任务。
可选地,生成单元还可用于:按照目标媒体文件的存储地址获取目标媒体文件的文件信息;在获取的目标媒体文件的文件信息与第一数据中保存的目标媒体文件的文件信息匹配的情况下,生成目标媒体文件的校验文件。
可选地,生成单元还可用于:在按照目标媒体文件的存储地址获取目标媒体文件的文件信息之后,在获取的目标媒体文件的文件信息与第一数据中保存的目标媒体文件的文件信息不匹配的情况下,取消执行生成目标媒体文件的校验文件的步骤。
可选地,生成单元还可用于:在通过目标任务生成模块生成目标媒体文件的校验文件之后,根据目标任务生成模块的执行结果在第二数据中更新目标生成任务的第二属性指示的处理状态。
根据本申请实施例的另一个方面,还提供了一种用于实施上述校验文件的处理方法的校验文件的处理装置。图7是根据本申请实施例的一种可选的校验文件的处理装置的示意图,如图7所示,该装置可以包括:
第二获取单元701,用于获取第一终端的第一请求,其中,第一请求用于请求获取目标媒体文件的校验文件;
第一发送单元703,用于响应于第一请求,将目标媒体文件的校验文件发送给第一终端,其中,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
需要说明的是,该实施例中的第二获取单元701可以用于执行本申请实施例中的步骤S302,该实施例中的第一发送单元703可以用于执行本申请实施例中的步骤S304。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中的存储系统,可以通过软件实现,也可以通过硬件实现。
可选地,该装置还可包括:保存单元,用于在获取第一终端的第一请求之前,向校验系统发送第二请求,其中,第二请求用于请求为存储系统中的目标媒体文件生成校验文件;获取校验系统返回的目标媒体文件的校验文件,其中,目标媒体文件的校验文件用于校验目标媒体文件;保存目标媒体文件的校验文件至存储系统。
根据本申请实施例的另一个方面,还提供了一种用于实施上述校验文件的处理方法的校验文件的处理装置。图8是根据本申请实施例的一种可选的校验文件的处理装置的示意图,如图8所示,该装置可以包括:
第二发送单元801,用于向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件;
接收单元803,用于接收存储系统返回的目标媒体文件的校验文件;
校验单元805,用于在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
需要说明的是,该实施例中的第二发送单元801可以用于执行本申请实施例中的步骤S402,该实施例中的接收单元803可以用于执行本申请实施例中的步骤S404,该实施例中的校验单元805可以用于执行本申请实施例中的步骤S406。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中的终端,可以通过软件实现,也可以通过硬件实现。
可选地,本申请的装置还可包括:播放单元,用于在利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验之后,在对第二终端上目标媒体文件进行的校验通过的情况下,从第二终端下载目标媒体文件;在下载的目标媒体文件的校验信息与校验文件中的校验信息匹配的情况下,播放目标媒体文件。
在本申请的技术方案中,是通过校验系统生成校验文件,而不是通过数据传输的双方(如作为分享端的第二终端和作为请求端的第一终端)来生成校验文件,可以解决相关技术中智能终端在校验过程中资源消耗较多的技术问题,由于媒体文件的校验文件是在被请求前在校验系统中预先生成,从而避免了校验过程中复杂计算的时间消耗和由此带来的传输延迟;另外,由于校验文件是校验系统预先生成的,从而不需要在校验过程中在分享端和请求端之间传输校验文件,减少了传输数据量,同时避免了校验和数据丢失导致的数据验证不可靠性的问题;与此同时,由于校验文件是校验系统预先生成的,且建立了校验文件与媒体文件之间的关联,采用这种计算落地的方式,得到的校验文件在有效期内可以重复利用(即所有终端在对目标媒体文件进行校验时获取的是同一校验文件),避免了产生很多重复性计算。
根据本申请实施例的另一个方面,还提供了一种用于实施上述校验文件的处理方法的服务器或终端。
图9是根据本申请实施例的一种终端的结构框图,如图9所示,该终端可以包括:一个或多个(图9中仅示出一个)处理器901、存储器903、以及传输装置905,如图9所示,该终端还可以包括输入输出设备907。
其中,存储器903可用于存储软件程序以及模块,如本申请实施例中的校验文件的处理方法和装置对应的程序指令/模块,处理器901通过运行存储在存储器903内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的校验文件的处理方法。存储器903可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器903可进一步包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置905用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置905包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置905为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器903用于存储应用程序。
处理器901可以通过传输装置905调用存储器903存储的应用程序,以执行下述步骤:
从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;
生成目标媒体文件的校验文件;
保存目标媒体文件的校验文件至存储系统;其中,在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
处理器901还用于执行下述步骤:
获取第一终端的第一请求,其中,第一请求用于请求获取目标媒体文件的校验文件;
响应于第一请求,将目标媒体文件的校验文件发送给第一终端,其中,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
处理器901还用于执行下述步骤:
向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件;
接收存储系统返回的目标媒体文件的校验文件;
在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图9所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,MID)、PAD等终端设备。图9其并不对上述电子装置的结构造成限定。例如,终端还可包括比图9中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图9所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行校验文件的处理方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
从存储系统获取目标媒体文件,其中,存储系统用于存储媒体文件;
生成目标媒体文件的校验文件;
保存目标媒体文件的校验文件至存储系统;其中,在第一终端向第二终端请求下载目标媒体文件的情况下,保存的目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
获取第一终端的第一请求,其中,第一请求用于请求获取目标媒体文件的校验文件;
响应于第一请求,将目标媒体文件的校验文件发送给第一终端,其中,目标媒体文件的校验文件和从第二终端获取的目标媒体文件的文件信息用于第一终端对第二终端上的目标媒体文件进行校验。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
向存储系统发送第一请求,其中,第一请求用于请求获取存储系统中目标媒体文件的校验文件;
接收存储系统返回的目标媒体文件的校验文件;
在需要从第二终端下载目标媒体文件的情况下,利用目标媒体文件的校验文件和第二终端上目标媒体文件的文件信息对第二终端上的目标媒体文件进行校验。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (17)

1.一种校验文件的处理方法,其特征在于,包括:
从存储系统获取目标媒体文件,其中,所述存储系统用于存储媒体文件;
生成所述目标媒体文件的校验文件:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件;
保存所述目标媒体文件的校验文件至所述存储系统;其中,在第一终端向第二终端请求下载所述目标媒体文件的情况下,保存的所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息用于所述第一终端对所述第二终端上的所述目标媒体文件进行校验。
2.根据权利要求1所述的方法,其特征在于,
所述目标媒体文件的校验文件包括:携带有所述目标媒体文件的修改时间的字段、携带有所述目标媒体文件的实体标识的字段以及携带有所述目标媒体文件的文件大小的字段;
所述目标媒体文件的文件信息包括:所述目标媒体文件的修改时间、所述目标媒体文件的实体标识以及所述目标媒体文件的文件大小。
3.根据权利要求2所述的方法,其特征在于,
所述校验文件还包括:携带有所述目标媒体文件的存储路径的字段、携带有所述目标媒体文件采用的校验方案的字段、携带有所述目标媒体文件的分片大小的字段以及携带有所述目标媒体文件的分片的校验和的字段;
所述目标媒体文件的校验信息包括:所述目标媒体文件的分片的校验和。
4.根据权利要求1所述的方法,其特征在于,在通过所述目标任务生成模块生成所述目标媒体文件的校验文件之前,所述方法还包括:
在不存在与所述目标媒体文件关联的校验文件的情况下,为所述目标媒体文件创建校验文件的文件生成任务,其中,所述文件生成任务为待所述目标任务生成模块执行的任务;或,
在存在与所述目标媒体文件关联的校验文件且与所述目标媒体文件关联的校验文件已经超过有效期的情况下,为所述目标媒体文件创建校验文件的文件生成任务。
5.根据权利要求1所述的方法,其特征在于,通过所述目标任务生成模块生成所述目标媒体文件的校验文件包括:
按照所述目标媒体文件的存储地址获取所述目标媒体文件的文件信息;
在获取的所述目标媒体文件的文件信息与所述第一数据中保存的所述目标媒体文件的文件信息匹配的情况下,生成所述目标媒体文件的校验文件。
6.根据权利要求5所述的方法,其特征在于,在按照所述目标媒体文件的存储地址获取所述目标媒体文件的文件信息之后,所述方法还包括:
在获取的所述目标媒体文件的文件信息与所述第一数据中保存的所述目标媒体文件的文件信息不匹配的情况下,取消执行生成所述目标媒体文件的校验文件的步骤。
7.根据权利要求5所述的方法,其特征在于,在通过所述目标任务生成模块生成所述目标媒体文件的校验文件之后,所述方法还包括:
根据所述目标任务生成模块的执行结果在所述第二数据中更新所述目标生成任务的第二属性指示的处理状态。
8.一种校验文件的处理方法,其特征在于,包括:
获取第一终端的第一请求,其中,所述第一请求用于请求获取目标媒体文件的校验文件;
响应于所述第一请求,将所述目标媒体文件的校验文件发送给所述第一终端,其中,所述目标媒体文件的校验文件和从第二终端获取的所述目标媒体文件的文件信息用于所述第一终端对所述第二终端上的所述目标媒体文件进行校验;
其中,所述目标媒体文件的校验文件是由校验系统按照如下方式生成的:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件。
9.根据权利要求8所述的方法,其特征在于,在获取第一终端的第一请求之前,所述方法还包括:
向校验系统发送第二请求,其中,所述第二请求用于请求为存储系统中的所述目标媒体文件生成校验文件;
获取所述校验系统返回的所述目标媒体文件的校验文件,其中,所述目标媒体文件的校验文件用于校验所述目标媒体文件;
保存所述目标媒体文件的校验文件至所述存储系统。
10.一种校验文件的处理方法,其特征在于,包括:
向存储系统发送第一请求,其中,所述第一请求用于请求获取所述存储系统中目标媒体文件的校验文件;
接收所述存储系统返回的所述目标媒体文件的校验文件;
在需要从第二终端下载所述目标媒体文件的情况下,利用所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息对所述第二终端上的所述目标媒体文件进行校验;
其中,所述目标媒体文件的校验文件是由校验系统按照如下方式生成的:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件。
11.根据权利要求10所述的方法,其特征在于,在利用所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息对所述第二终端上的所述目标媒体文件进行校验之后,所述方法还包括:
在对所述第二终端上所述目标媒体文件进行的校验通过的情况下,从所述第二终端下载所述目标媒体文件;
在下载的所述目标媒体文件的校验信息与所述校验文件中的校验信息匹配的情况下,播放所述目标媒体文件。
12.一种校验文件的处理装置,其特征在于,包括:
第一获取单元,用于从存储系统获取目标媒体文件,其中,所述存储系统用于存储媒体文件;
生成单元,用于生成所述目标媒体文件的校验文件:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件;
保存单元,用于保存所述目标媒体文件的校验文件至所述存储系统;其中,在第一终端向第二终端请求下载所述目标媒体文件的情况下,保存的所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息用于所述第一终端对所述第二终端上的所述目标媒体文件进行校验。
13.一种校验文件的处理装置,其特征在于,包括:
第二获取单元,用于获取第一终端的第一请求,其中,所述第一请求用于请求获取目标媒体文件的校验文件;
第一发送单元,用于响应于所述第一请求,将所述目标媒体文件的校验文件发送给所述第一终端,其中,所述目标媒体文件的校验文件和从第二终端获取的所述目标媒体文件的文件信息用于所述第一终端对所述第二终端上的所述目标媒体文件进行校验;
其中,所述目标媒体文件的校验文件是由校验系统按照如下方式生成的:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件。
14.一种校验文件的处理装置,其特征在于,包括:
第二发送单元,用于向存储系统发送第一请求,其中,所述第一请求用于请求获取所述存储系统中目标媒体文件的校验文件;
接收单元,用于接收所述存储系统返回的所述目标媒体文件的校验文件;
校验单元,用于在需要从第二终端下载所述目标媒体文件的情况下,利用所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息对所述第二终端上的所述目标媒体文件进行校验;
其中,所述目标媒体文件的校验文件是由校验系统按照如下方式生成的:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件。
15.一种校验文件的处理系统,其特征在于,包括:
存储系统,所述存储系统用于存储媒体文件;
第二终端,所述第二终端上保存有来源于所述存储系统的目标媒体文件;
校验系统,所述校验系统用于生成所述目标媒体文件的校验文件,其中,所述目标媒体文件的校验文件是按照如下方式生成的:为所述目标媒体文件创建校验文件的目标生成任务,并将所述目标生成任务和所述目标生成任务的第一属性保存至第一数据中,其中,所述第一属性用于指示所述目标媒体文件的存储地址和处理优先级,所述第一数据用于保存待分配的生成任务;在所述第一属性指示的处理优先级达到目标优先级的情况下,将所述目标生成任务分配给多个任务生成模块中的目标任务生成模块,并将所述目标生成任务和所述目标生成任务的第二属性保存至第二数据中,其中,所述第二属性用于指示所述目标生成任务的处理状态;通过所述目标任务生成模块生成所述目标媒体文件的校验文件;
第一终端,所述第一终端用于利用所述校验系统生成的所述目标媒体文件的校验文件和所述第二终端上所述目标媒体文件的文件信息对所述第二终端上的所述目标媒体文件进行校验。
16.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至11任一项中所述的方法。
17.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至11任一项中所述的方法。
CN201911329231.6A 2019-12-20 2019-12-20 校验文件的处理方法、装置及系统、存储介质、电子装置 Active CN113014533B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911329231.6A CN113014533B (zh) 2019-12-20 2019-12-20 校验文件的处理方法、装置及系统、存储介质、电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911329231.6A CN113014533B (zh) 2019-12-20 2019-12-20 校验文件的处理方法、装置及系统、存储介质、电子装置

Publications (2)

Publication Number Publication Date
CN113014533A CN113014533A (zh) 2021-06-22
CN113014533B true CN113014533B (zh) 2022-11-08

Family

ID=76381906

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911329231.6A Active CN113014533B (zh) 2019-12-20 2019-12-20 校验文件的处理方法、装置及系统、存储介质、电子装置

Country Status (1)

Country Link
CN (1) CN113014533B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346167A (zh) * 2014-08-25 2015-02-11 腾讯科技(深圳)有限公司 生成应用渠道包的方法及装置
CN104661042A (zh) * 2013-11-25 2015-05-27 乐视网信息技术(北京)股份有限公司 一种传输流的传输方法、装置和系统
CA2998517A1 (en) * 2015-09-16 2017-03-23 10353744 Canada Ltd. Processing method for acquiring target data, server, and online funding method
CN108390941A (zh) * 2018-03-20 2018-08-10 浙江臻善科技股份有限公司 端对端实时文件传输方法、系统及第一终端和第二终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104661042A (zh) * 2013-11-25 2015-05-27 乐视网信息技术(北京)股份有限公司 一种传输流的传输方法、装置和系统
CN104346167A (zh) * 2014-08-25 2015-02-11 腾讯科技(深圳)有限公司 生成应用渠道包的方法及装置
CA2998517A1 (en) * 2015-09-16 2017-03-23 10353744 Canada Ltd. Processing method for acquiring target data, server, and online funding method
CN108390941A (zh) * 2018-03-20 2018-08-10 浙江臻善科技股份有限公司 端对端实时文件传输方法、系统及第一终端和第二终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Peer-to-Peer Streaming Peer Protocol (PPSPP);A. Bakker等;《IETF 》;20150731;全文 *

Also Published As

Publication number Publication date
CN113014533A (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
CN110417558B (zh) 签名的验证方法和装置、存储介质及电子装置
CN107276765B (zh) 区块链中共识的处理方法及装置
CN112235420B (zh) 基于区块链的数据同步方法、系统及相关设备
CN112000355B (zh) 用于固件升级的方法及装置、家电设备
CN103475682B (zh) 文件迁移方法及设备
CN105577777A (zh) 一种消息处理方法、装置及系统
CN106170968B (zh) 一种数据压缩存储方法、装置,及分布式文件系统
CN107517227B (zh) 用于分布式一致性系统的会话实现方法以及装置
CN108768672B (zh) 数据处理方法、装置及存储介质
CN113190778A (zh) 业务数据推送方法、系统、计算机设备及计算机存储介质
CN113064707B (zh) 一种消息处理方法、装置及设备
CN110351276A (zh) 数据处理方法、设备及计算机可读存储介质
CN111290965B (zh) 一种测试方法、装置、计算机设备和存储介质
CN115718868A (zh) 模型训练方法、装置及系统
US20240106890A1 (en) Peer-to-peer network scheduling method and system
CN113114503B (zh) 基于应用交付网络需求的部署方法及装置
CN105184559B (zh) 一种支付系统及方法
CN114416135A (zh) 一种物联网云平台远程终端升级系统及方法
CN113014533B (zh) 校验文件的处理方法、装置及系统、存储介质、电子装置
CN111698281B (zh) 一种资源下载方法、装置、电子设备及存储介质
WO2024074091A1 (zh) 一种sip动态负载均衡方法、系统、设备和存储介质
CN106203179A (zh) 一种对文件的完整性校验系统及方法
CN110895583B (zh) 数据资源获取的方法、装置和系统
CN111327680B (zh) 认证数据同步方法、装置、系统、计算机设备和存储介质
CN110602515B (zh) 基于区块链的数据处理方法、服务器及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant