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

一种基于FTP协议的实时文件传输方法及系统与流程

2021-12-07 21:35:00 来源:中国专利 TAG:

一种基于ftp协议的实时文件传输方法及系统
技术领域
1.本发明涉及文件传输技术领域,尤其是涉及一种基于ftp协议的实时文件传输方法及系统。


背景技术:

2.在电信行业业务办理过程中,需要实时在服务器与本地之间传输文件;因此,需要实时的查找文件目录中的文件,查找符合条件的文件后,将文件传输到服务器或本地。
3.目前业务办理系统文件传输效率较低,随着业务的增加,较低的文件传输效率不能满足业务办理的需求,容易造成业务积压、延时等问题。


技术实现要素:

4.针对上述问题,本发明提供了一种基于ftp协议的实时文件传输方法及系统,通过多线程连接ftp服务器实现指定目录的实时文件传输。
5.为实现上述目的,本发明提供了一种应急类多任务处理短信群发系统,包括:
6.启动多线程连接ftp服务器,包括主线程和多个分线程;
7.所述主线程实时监控文件目录,根据需要查询所述文件目录下的文件;
8.判断查询到的文件是否已被传输;
9.若判断结果为否,则获取所述文件的属性信息并封装为对象放至共享队列;
10.所述分线程从所述共享队列中获取所述对象,执行传输任务。
11.作为本发明的进一步改进,所述主线程实时监控文件目录,根据需要查询所述文件目录下的文件;包括:
12.所述主线程实时监控ftp服务器的文件目录和本地文件目录;
13.根据下载需要查询所述ftp服务器的文件目录;
14.根据上传需要查询所述本地文件目录。
15.作为本发明的进一步改进,所述文件的属性信息包括:源文件目录、源文件名称、目标服务器和目标目录。
16.作为本发明的进一步改进,所述分线程从所述共享队列中获取所述对象,执行传输任务;包括:
17.各所述分线程分别从所述共享队列中获取不同的所述对象;
18.解析所述对象中封装的所述属性信息;
19.根据属性信息,将所述文件从源端传输至目标端。
20.作为本发明的进一步改进,若所述分线程执行传输任务过程中出现异常,则将所述对象重新放回所述共享队列中。
21.本发明还提供了一种基于ftp协议的实时文件传输的系统,包括:线程连接模块、监控模块、传输情况判断模块、封装模块和文件传输模块;
22.所述线程连接模块,用于:
23.启动多线程连接ftp服务器,包括主线程和多个分线程;
24.所述监控模块,用于:
25.所述主线程实时监控文件目录,根据需要查询所述文件目录下的文件;
26.所述传输情况判断模块,用于:
27.判断查询到的文件是否已被传输;
28.所述封装模块,用于:
29.若判断结果为否,则获取所述文件的属性信息并封装为对象放至共享队列;
30.所述文件传输模块,用于:
31.所述分线程从所述共享队列中获取所述对象,执行传输任务。
32.作为本发明的进一步改进,所述主线程实时监控文件目录,根据需要查询所述文件目录下的文件;包括:
33.所述主线程实时监控ftp服务器的文件目录和本地文件目录;
34.根据下载需要查询所述ftp服务器的文件目录;
35.根据上传需要查询所述本地文件目录。
36.作为本发明的进一步改进,所述文件的属性信息包括:源文件目录、源文件名称、目标服务器和目标目录。
37.作为本发明的进一步改进,所述分线程从所述共享队列中获取所述对象,执行传输任务;包括:
38.各所述分线程分别从所述共享队列中获取不同的所述对象;
39.解析所述对象中封装的所述属性信息;
40.根据属性信息,将所述文件从源端传输至目标端。
41.作为本发明的进一步改进,若所述分线程执行传输任务过程中出现异常,则将所述对象重新放回所述共享队列中。
42.与现有技术相比,本发明的有益效果为:
43.本发明通过多线程连接ftp服务器,将其中一条线程作为主线程,实现实时监控ftp服务器的目录文件及本地的目录文件;进而通过主线程获取文件至共享队列,搭配多线程传输文件的形式,实现文件实时快速的在ftp服务器的目录文件和本地的目录文件之间的上传和下载。
44.本发明的方案中运维人员可自动设置具体的上传下载任务、具体的ftp服务器及连接ftp的线程数量,进而启动程序,主线程分局设置的上传下载任务分别扫描本地的目录文件和ftp服务器的目录文件,完成上传下载的文件传输工作。
附图说明
45.图1为本发明一种实施例公开的基于ftp协议的实时文件传输方法流程图;
46.图2为本发明一种实施例公开的基于ftp协议的实时文件传输方法系统示意图。
具体实施方式
47.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
48.下面结合附图对本发明做进一步的详细描述:
49.实施例:
50.如图1所示,本发明提供的一种基于ftp协议的实时文件传输方法,包括:
51.s1、启动多线程连接ftp服务器,包括主线程和多个分线程;
52.s2、主线程实时监控文件目录,根据需要查询文件目录下的文件;
53.其中,包括:
54.主线程实时监控ftp服务器的文件目录和本地文件目录;
55.根据下载需要查询ftp服务器的文件目录;
56.根据上传需要查询本地文件目录。
57.s3、判断查询到的文件是否已被传输;
58.s4、若判断结果为否,则获取文件的属性信息并封装为对象放至共享队列;
59.其中,
60.文件的属性信息包括:源文件目录、源文件名称、目标服务器和目标目录。
61.s5、分线程从共享队列中获取对象,执行传输任务。
62.其中,包括:
63.各分线程分别从共享队列中获取不同的对象;
64.解析对象中封装的属性信息;
65.根据属性信息,将文件从源端传输至目标端。
66.进一步的,
67.根据属性信息中源文件目录及目标目录,将文件从源文件目录传输至目标目录。
68.本发明中,若分线程执行传输任务过程中出现异常,则将对象重新放回共享队列中。
69.如图2所示,本发明还提供了一种基于ftp协议的实时文件传输系统,包括:线程连接模块、监控模块、传输情况判断模块、封装模块和文件传输模块;
70.线程连接模块,用于:
71.启动多线程连接ftp服务器,包括主线程和多个分线程;
72.监控模块,用于:
73.主线程实时监控文件目录,根据需要查询文件目录下的文件;
74.其中,包括:
75.主线程实时监控ftp服务器的文件目录和本地文件目录;
76.根据下载需要查询ftp服务器的文件目录;
77.根据上传需要查询本地文件目录。
78.传输情况判断模块,用于:
79.判断查询到的文件是否已被传输;
80.封装模块,用于:
81.若判断结果为否,则获取文件的属性信息并封装为对象放至共享队列;
82.其中,
83.文件的属性信息包括:源文件目录、源文件名称、目标服务器和目标目录。
84.文件传输模块,用于:
85.分线程从共享队列中获取对象,执行传输任务。
86.其中,包括:
87.各分线程分别从共享队列中获取不同的对象;
88.解析对象中封装的属性信息;
89.根据属性信息,将文件从源端传输至目标端。
90.进一步的,根据属性信息中源文件目录及目标目录,将文件从源文件目录传输至目标目录。
91.本发明中,若分线程执行传输任务过程中出现异常,则将对象重新放回共享队列中。
92.本发明的优点:
93.(1)通过多线程连接ftp服务器,将其中一条线程作为主线程,实现实时监控ftp服务器的目录文件及本地的目录文件;进而通过主线程获取文件至共享队列,搭配多线程传输文件的形式,实现文件实时快速的在ftp服务器的目录文件和本地的目录文件之间的上传和下载。
94.(2)运维人员可自动设置具体的上传下载任务、具体的ftp服务器及连接ftp的线程数量,程序自动根据设定信息,初始化ftp服务器连接,进而启动程序,主线程分局设置的上传下载任务分别扫描本地的目录文件和ftp服务器的目录文件,完成上传下载的文件传输工作。
95.(3)分线程实时检查共享队列是否有对象,如果有对象,则从共享队列中取出对象,根据对象中的信息,执行文件传输任务,直至共享队列为空
96.(4)主线程定时检查该任务是否需要停止、重启等,便于前端对任务的控制管理。
97.(5)实时监控ftp服务器的目录文件,当该目录文件下有符合下载要求的文件时,将文件从ftp服务器上下载至本地目录;实时监控本地目录文件,当该目录文件下有符合上传条件的文件时,将文件上传至指定的ftp服务器的指定目录下,可以是多台ftp服务器。
98.以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献