文件传输方法及装置制造方法及图纸

技术编号:35001786 阅读:17 留言:0更新日期:2022-09-21 14:51
本发明专利技术提供一种文件传输方法及装置,该方法包括:根据待传输文件的内容信息,对待传输文件进行编码;在服务器的文件传输列表中查找与所述待传输文件具有相同编码值的目标文件;在未查找到所述目标文件的情况下,若判断获知待传输文件的文件大小大于预设阈值的情况下,对待传输文件进行拆分,得到所述待传输文件的多个子文件;从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,以供服务器在确定所述待传输文件中所有子文件的传输状态均为传输完成的情况下,对所述待传输文件中的所有子文件进行合并;其中,所述多个线程并行执行文件传输操作。本发明专利技术实现快速稳定地对文件进行传输。行传输。行传输。

【技术实现步骤摘要】
文件传输方法及装置


[0001]本专利技术涉及数据处理
,尤其涉及一种文件传输方法及装置。

技术介绍

[0002]目前很多公司在程序开发中,由于业务场景比较复杂,批量文本上传、交互也越来越多,涉及的上传大文本数据也越来越多,且文本数据量也越来越大,如一个txt文本文件包含的数据内容超过300G,并且该大文本数据下发的频率也较高,一般是每天一次或每几个小时一次,因此对业务时效性要求也比较高,很难在短时间内处理这些文本文件数据。随着业务场景的增加,以及业务的变更也越来越频繁,接入的系统越来越多,则对应系统大文本也越来越多。因此,为了使得业务人员能快速高效地查看数据和使用数据,如何高效快速的上传大文本数据的需求也越来越迫切。
[0003]现有技术中,程序开发中大文件上传方式一般都是纯手工编写代码调用FTP(File Transfer Protocol,文件传输协议)方法进行上传处理或者根据现有的断点续传串行方式进行上传。这种对文件进行逐一串行FTP上传处理的方式,导致文件的上传处理性能较慢,使得文件上传性能比较差和效率比较低下等。

技术实现思路

[0004]本专利技术提供一种文件传输方法及装置,用以解决现有技术中文件上传性能差和效率低的缺陷,实现快速稳定地对文件进行传输。
[0005]本专利技术提供一种文件传输方法,包括:
[0006]根据待传输文件的内容信息,对所述待传输文件进行编码;
[0007]在服务器的文件传输列表中查找与所述待传输文件具有相同编码值的目标文件;
[0008]在未查找到所述目标文件的情况下,若判断获知所述待传输文件的文件大小大于预设阈值的情况下,对所述待传输文件进行拆分,得到所述待传输文件的多个子文件;
[0009]从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,以供所述服务器在确定所述待传输文件中所有子文件的传输状态均为传输完成的情况下,对所述待传输文件中的所有子文件进行合并;其中,所述多个线程并行执行文件传输操作。
[0010]根据本专利技术提供的一种文件传输方法,所述基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,包括:
[0011]根据每一子文件的内容信息,对所述每一子文件进行编码;
[0012]在确定所述多个子文件中存在编码值与所述文件传输列表中的至少一个编码值相同的第一目标子文件的情况下,将所述第一目标子文件的传输状态更新为传输完成,并将所述第一目标子文件的编码值存储在所述文件传输列表中;
[0013]获取所述多个子文件中除所述第一目标子文件外的第二目标子文件;
[0014]基于所述多个线程中的每一线程,将所述每一线程对应的第二目标子文件传输至
所述服务器。
[0015]根据本专利技术提供的一种文件传输方法,所述从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,包括:
[0016]根据所述线程池中线程的总数量和每一线程的运行情况,确定调用所述线程的目标数量;
[0017]在所述目标数量小于所述待传输文件中待传输子文件的数量的情况下,调用所述目标数量的线程,基于所述目标数量的线程中的每一线程,将所述每一线程对应的待传输子文件传输至所述服务器,并持续监听所述线程池中每一线程的运行情况和获取所述待传输文件中剩余待传输子文件的数量;
[0018]在确定所述线程池中存在运行状态为空闲状态的目标线程的情况下,调用所述目标线程,将所述目标线程对应的剩余待传输子文件传输至所述服务器,直到所述目标文件中的所有子文件均传输完成。
[0019]根据本专利技术提供的一种文件传输方法,所述方法还包括:
[0020]在查找到所述目标文件的情况下,将所述待传输文件的传输状态更新为传输完成,并将所述待传输文件的编码值存储在所述文件传输列表。
[0021]根据本专利技术提供的一种文件传输方法,所述方法还包括:
[0022]在查找到所述目标文件的情况下,从所述服务器中获取所述目标文件的传输进度和文件名称;
[0023]根据目标文件的传输进度和文件名称生成提示信息,并将所述提示信息发送至终端;其中,所述提示信息用于提示用户所述服务器中已传输有所述目标文件,以及所述目标文件的传输进度和文件名称。
[0024]根据本专利技术提供的一种文件传输方法,所述对所述待传输文件进行拆分,包括:
[0025]根据所述待传输文件的属性信息,获取所述待传输文件的拆分策略;
[0026]根据所述拆分策略,对所述待传输文件进行拆分;
[0027]所述对所述待传输文件中所有子文件进行合并,包括:
[0028]根据所述拆分策略对应的合并策略,对所述待传输文件中所有子文件进行合并。
[0029]根据本专利技术提供的一种文件传输方法,所述根据待传输文件的内容信息,对所述待传输文件进行编码,包括:
[0030]根据所述待传输文件的内容信息和信息摘要算法,对所述待传输文件进行编码。
[0031]本专利技术还提供一种文件传输装置,包括:
[0032]编码模块,用于根据待传输文件的内容信息,对所述待传输文件进行编码;
[0033]查找模块,用于在服务器的文件传输列表中查找与所述待传输文件具有相同编码值的目标文件;
[0034]拆分模块,用于在未查找到所述目标文件的情况下,若判断获知所述待传输文件的文件大小大于预设阈值的情况下,对所述待传输文件进行拆分,得到所述待传输文件的多个子文件;
[0035]传输模块,用于从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,以供所述服务器在确定所述待传输文件中所有子文件的传输状态均为传输完成的情况下,对所述待传输文件中的所有子文件进行合
并;其中,所述多个线程并行执行文件传输操作。
[0036]本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述文件传输方法。
[0037]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述文件传输方法。
[0038]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述文件传输方法。
[0039]本专利技术提供的文件传输方法及装置,一方面通过对待传输文件的内容信息进行编码,以在服务器中已传输有与待传输文件具有相同编码值的目标文件的情况下,不用重复上传待传输文件,并达到待传输文件秒传结束的效果,有效避免服务器资源的冗余占用,提高文件复用率;另一方面,在服务器中未传输有与待传输文件具有相同编码值的目标文件的情况下,对待传输文件进行分片并发传输至服务器后再合并,有效提高文件传输的效率和准确性,有效提高用户本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件传输方法,其特征在于,包括:根据待传输文件的内容信息,对所述待传输文件进行编码;在服务器的文件传输列表中查找与所述待传输文件具有相同编码值的目标文件;在未查找到所述目标文件的情况下,若判断获知所述待传输文件的文件大小大于预设阈值的情况下,对所述待传输文件进行拆分,得到所述待传输文件的多个子文件;从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,以供所述服务器在确定所述待传输文件中所有子文件的传输状态均为传输完成的情况下,对所述待传输文件中的所有子文件进行合并;其中,所述多个线程并行执行文件传输操作。2.根据权利要求1所述的文件传输方法,其特征在于,所述基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,包括:根据每一子文件的内容信息,对所述每一子文件进行编码;在确定所述多个子文件中存在编码值与所述文件传输列表中的至少一个编码值相同的第一目标子文件的情况下,将所述第一目标子文件的传输状态更新为传输完成,并将所述第一目标子文件的编码值存储在所述文件传输列表中;获取所述多个子文件中除所述第一目标子文件外的第二目标子文件;基于所述多个线程中的每一线程,将所述每一线程对应的第二目标子文件传输至所述服务器。3.根据权利要求1所述的文件传输方法,其特征在于,所述从线程池中调用多个线程,基于所述多个线程中的每一线程,将所述每一线程对应的子文件传输至所述服务器,包括:根据所述线程池中线程的总数量和每一线程的运行情况,确定调用所述线程的目标数量;在所述目标数量小于所述待传输文件中待传输子文件的数量的情况下,调用所述目标数量的线程,基于所述目标数量的线程中的每一线程,将所述每一线程对应的待传输子文件传输至所述服务器,并持续监听所述线程池中每一线程的运行情况和获取所述待传输文件中剩余待传输子文件的数量;在确定所述线程池中存在运行状态为空闲状态的目标线程的情况下,调用所述目标线程,将所述目标线程对应的剩余待传输子文件传输至所述服务器,直到所述目标文件中的所有子文件均传输完成。4.根据权利要求1

3任一所述的文件传输方法,其特征在于,所述方法还包括:在查找到所述目标文件的情况下,将所述待传输文件的传输状态更新为传输完成,...

【专利技术属性】
技术研发人员:陈国杰
申请(专利权)人:中银金融科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1