一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

影像文件传输方法及装置与流程

2021-10-24 08:10:00 来源:中国专利 TAG:分布式 文件传输 装置 影像 方法


1.本发明涉及分布式技术领域,尤其涉及影像文件传输方法及装置。


背景技术:

2.目前常用的影像文件传输设计方案有两种:第一种方案是以前后端的形式,前端客户通过某种网络协议以数据流的形式传输给服务端,服务端直接将数据流转到存储服务器上进行影像文件的正式存储。此种方案因为系统稳定性、一致性及安全等问题,实际应用及实现较少。第二种方案是用户一次上传影像操作需上传影像文件和影像描述信息,通过http或socket网络协议将文件数据流传输到服务端。首先,服务端将文件流转接并缓存到临时存储区。然后,服务端将影像描述信息拆解为不同的元数据并存入数据库相应的表中,同时以事务的形式将临时存储区的文件转移至对象存储服务(obs)器的正式存储区,保持数据库表中元数据信息与obs中文件的一致性,相较于第一种方案进行了一致性、安全性方面的优化,但是存在二次存储的效率问题。当多用户同时进行影像文件上传时,或当某些用户进行批量文件上传时,或当某些用户上传大文件时,服务端既要完成每个文件的两次存储,又需要完成文件描述信息的元数据拆分关联与入库。因而,后台服务器及文件存储服务器压力骤然增大,资源占用飙升,从而导致上传文件过程缓慢,甚至因系统资源不足问题导致某些用户服务失败,用户体验差。
3.因此,亟需一种可以克服上述问题的影像文件传输方案。


技术实现要素:

4.本发明实施例提供一种影像文件传输方法,用以进行影像文件传输,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题,该方法包括:
5.接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;
6.根据所述文件描述信息,生成对应的关系信息;
7.根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;
8.根据所述传输方式,进行影像文件传输。
9.本发明实施例提供一种影像文件传输装置,用以进行影像文件传输,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题,该装置包括:
10.请求接收模块,用于接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;
11.信息生成模块,用于根据所述文件描述信息,生成对应的关系信息;
12.方式查询模块,用于根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;
13.文件传输模块,用于根据所述传输方式,进行影像文件传输。
14.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述影像文件传输方法。
15.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述影像文件传输方法的计算机程序。
16.本发明实施例通过接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;根据所述文件描述信息,生成对应的关系信息;根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;根据所述传输方式,进行影像文件传输。本发明实施例增加了异步传输方式,从而可缓解多用户上传、批量上传、大文件上传等场景给系统带来的压力,提升系统文件的传输效率、充分利用服务器资源并大幅度提升客户体验,提升运算效率,减少计算过程中磁盘i/o的次数,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题。
附图说明
17.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
18.图1为本发明实施例中影像文件传输方法示意图;
19.图2为本发明实施例中另一影像文件传输方法示意图;
20.图3为本发明实施例中影像文件传输装置结构图;
21.图4为本发明实施例中另一影像文件传输装置结构图;
22.图5是本发明实施例的计算机设备结构示意图。
具体实施方式
23.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
24.首先,对本发明实施例中的技术名词进行介绍:
25.分布式数据库:位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。
26.对象存储服务(object storage service,obs):一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力,包括:创建、修改、删除桶,上传、下载、删除对象等。
27.元数据(metadata):对象的描述信息,包括系统元数据和用户元数据。系统元数据由用户在上传对象时指定,也包括后台服务根据文件关联性组成新的关系数据,用于描述影像文件的相关业务信息。用户元数据由用户在上传对象时指定,是用户自定义的对象描述信息。
28.分布式影像管理系统(distributed image management system):一种将影像文件(如照片、视频、合同扫描件等)通过网络上传到服务存储器,以供查询、调用、修改、删除等操作。
29.为了进行影像文件传输,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题,本发明实施例提供一种影像文件传输方法,如图1所示,该方法可以包括:
30.步骤101、接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;
31.步骤102、根据所述文件描述信息,生成对应的关系信息;
32.步骤103、根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;
33.步骤104、根据所述传输方式,进行影像文件传输。
34.由图1所示可以得知,本发明实施例通过接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;根据所述文件描述信息,生成对应的关系信息;根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;根据所述传输方式,进行影像文件传输。本发明实施例增加了异步传输方式,从而可缓解多用户上传、批量上传、大文件上传等场景给系统带来的压力,提升系统文件的传输效率、充分利用服务器资源并大幅度提升客户体验,提升运算效率,减少计算过程中磁盘i/o的次数,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题。
35.实施例中,接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;根据所述文件描述信息,生成对应的关系信息。
36.本实施例中,所述关系信息包括:用户信息,源系统信息,影像库信息,文件唯一标识,存储位置信息其中之一或任意组合。
37.本实施例中,所述影像文件上传请求包括:http协议的影像文件上传请求和scoket协议的影像文件上传请求。
38.具体实施时,经过前期认证、地址获取等处理后,用户发起影像文件上传请求,服务接入模块支持http和scoket两种协议。
39.实施例中,根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;根据所述传输方式,进行影像文件传输。
40.本实施例中,根据所述传输方式,进行影像文件传输,包括:
41.若传输方式为异步传输,则生成对应的事件信息;
42.将所述事件信息存储至数据库事件表中,将所述文件描述信息存储至数据库元数据表中,将所述关系信息存储至数据库关系表中。
43.本实施例中,如图2所示,影像文件传输方法还包括:
44.步骤201、将所述影像文件存储至obs存储服务器的临时存储区;
45.步骤202、从数据库事件表中批量获取需要进行异步传输的事件信息;
46.步骤203、根据所述事件信息,从数据库元数据表中查找对应的文件描述信息,将
数据库关系表中查找对应的关系信息;
47.步骤204、根据所述文件描述信息和关系信息,将影像文件从obs存储服务器的临时存储区传输至正式存储区。
48.本实施例中,影像文件传输方法还包括:根据传输的结果,更新数据库事件表,数据库元数据表和数据库关系表。
49.下面给出一个具体实施例,说明本发明实施例中影像文件传输的具体应用。在本具体实施例中,按如下步骤进行影像文件传输:
50.1、客户文件上传:经过前期认证、地址获取等处理后,用户发起影像文件上传请求,服务接入模块支持http和scoket两种请求。
51.2、临时存储:服务接入模块把用户上传的文件存储到obs存储服务器的临时存储区,以备后期同步或异步挪文件使用(临时存储区传输到正式存储区),obs的适配软件模块用于存储用户上传的影像文件,实现临时存储和正式存储过程。
52.3、业务信息处理:服务接入模块从用户上传的元数据信息进行解析,并重新打包传递给业务处理模块。
53.4、策略配置查询:业务处理模块解析元数据,并抽取出关联信息(如用户信息、源系统信息、影像库信息、文件唯一标识、存储位置信息等)。根据此次业务的相关元数据信息及关系表信息,从策略模块查询出本次交易的影像文件从临时存储区传输到正式存储区的同步或异步方式。策略模块中的传输配置同其它配置一致,在策略模块启动时,从数据库加载到内存。根据用户上传的文件描述信息,识别出元数据信息并生成关系表,以便存储到数据库。根据策略模块提取到预设的配置信息,对用户上传文件的信息进行同步和异步的识别。策略模块启动后即从策略数据库中读取异步补偿机制的相关配置信息到内存,并提供查询服务。
54.5、元数据入库:业务处理模块将相关的元数据信息存储到对应的元数据表,影像文件相关的关系信息存入到数据库关系表。元数据表用于存储影像文件的描述信息(元数据),属于业务信息表。
55.6、补偿事件入库:业务处理模块将构成事件信息,并将此信息存储到事件表。事件表用于存储异步补偿的用户影像文件信息,属于中间过程表,记录一次交易中需异步补偿机制进行上传的影像信息
56.7、获取补偿事件:批量程序启动,并定时从事件表中获取需要通过异步补偿方式,从临时存储区转存到正式存储区的文件信息。
57.8、获取元数据信息:根据文件的源数据信息找到待传输文件的位置等相关信息。
58.9、完成临时到正式的存储:将该影像文件从临时存储区传输到正式存储区,实现文件的真正上传。也即定时异步补偿,读取数据库事件表以及元数据信息,完成文件从临时存储到正式存储的转移。根据结果,更新相应事件表、元数据表信息。
59.10、更新事件表:将已完成文件异步补偿传输的相应事件信息删除,或根据实际情况修改其中的传输状态标记。
60.11、更新元数据表:根据传输结果,修改元数据、关系表信息,如文件存储位置、当前状态、obs内编号等。
61.本发明实施例根据影像文件的时效性要求(如来源系统等级、用户等级、影像库常
用程度等信息),将部分时效性要求低的文件传输的过程转移至定时异步补偿机制中完成。在现有的影像管理系统中引入本发明提供的异步补偿传输机制,可缓解多用户上传、批量上传、大文件上传等场景给系统带来的压力,提升系统文件的传输效率、充分利用服务器资源并大幅度提升客户体验。
62.本发明实施例主要解决现有的分布式影像管理系统中,在多任务并发的场景下(如大量用户通过该系统同时上传文件、批量上传文件、上传大文件等),存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题,通过在分布式影像管理系统中引入异步补偿机制解决上述问题,通过合理的数据库事件表设计,将原方案上传过程中临时存储到正式存储的转移过程,结合时效性要求,将部分优化到异步补偿的批量任务中执行,缓解上传过程中服务器的峰值压力,提升传输效率及服务成功率,提升用户体验。
63.本发明实施例面向用户提供http、socket两种协议的接口支持,支持影像文件(如照片、视频、合同扫描件等)通过网络上传到服务存储器,以供查询、调用、修改、删除等操作。在上传的过程中,改进传输过程,采用异步补偿机制,即在影像文件上传时,通过历史数据分析,并运用数据库表进行记录,将部分时效性要求较低的文件传输优化为异步补偿任务,进行定时批量程序处理,从而缓解多用户上传、批量上传、大文件上传等场景给系统带来的压力,提升系统文件的传输效率、充分利用服务器资源并大幅度提升客户体验。
64.基于同一发明构思,本发明实施例还提供了一种影像文件传输装置,如下面的实施例所述。由于这些解决问题的原理与影像文件传输方法相似,因此影像文件传输装置的实施可以参见方法的实施,重复之处不再赘述。
65.图3为本发明实施例中影像文件传输装置的结构图,如图3所示,该影像文件传输装置包括:
66.请求接收模块301,用于接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;
67.信息生成模块302,用于根据所述文件描述信息,生成对应的关系信息;
68.方式查询模块303,用于根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;
69.文件传输模块304,用于根据所述传输方式,进行影像文件传输。
70.一个实施例中,所述关系信息包括:用户信息,源系统信息,影像库信息,文件唯一标识,存储位置信息其中之一或任意组合。
71.一个实施例中,文件传输模块进一步用于:
72.若传输方式为异步传输,则生成对应的事件信息;
73.将所述事件信息存储至数据库事件表中,将所述文件描述信息存储至数据库元数据表中,将所述关系信息存储至数据库关系表中。
74.一个实施例中,如图4所示,影像文件传输装置还包括:
75.临时存储模块401,用于将所述影像文件存储至obs存储服务器的临时存储区;
76.事件获取模块402,用于从数据库事件表中批量获取需要进行异步传输的事件信息;
77.信息查找模块403,用于根据所述事件信息,从数据库元数据表中查找对应的文件描述信息,将数据库关系表中查找对应的关系信息;
78.正式存储模块404,用于根据所述文件描述信息和关系信息,将影像文件从obs存储服务器的临时存储区传输至正式存储区。
79.综上所述,本发明实施例通过接收影像文件上传请求,所述影像文件上传请求中携带影像文件和对应的文件描述信息;根据所述文件描述信息,生成对应的关系信息;根据所述文件描述信息和对应的关系信息,从数据库中查询所述影像文件的传输方式,所述传输方式包括:同步传输和异步传输;根据所述传输方式,进行影像文件传输。本发明实施例增加了异步传输方式,从而可缓解多用户上传、批量上传、大文件上传等场景给系统带来的压力,提升系统文件的传输效率、充分利用服务器资源并大幅度提升客户体验,提升运算效率,减少计算过程中磁盘i/o的次数,解决多任务并发场景下存在的上传文件效率低、用户等待时间较长、系统易阻塞的问题。
80.基于前述发明构思,如图5所示,本发明还提出了一种计算机设备500,包括存储器510、处理器520及存储在存储器510上并可在处理器520上运行的计算机程序530,所述处理器520执行所述计算机程序530时实现前述影像文件传输方法。
81.基于前述发明构思,本发明提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前述影像文件传输方法。
82.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
83.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
84.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
85.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
86.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜