CN110620798B - Ftp连接的控制方法、系统、设备和存储介质 - Google Patents

Ftp连接的控制方法、系统、设备和存储介质 Download PDF

Info

Publication number
CN110620798B
CN110620798B CN201810631533.8A CN201810631533A CN110620798B CN 110620798 B CN110620798 B CN 110620798B CN 201810631533 A CN201810631533 A CN 201810631533A CN 110620798 B CN110620798 B CN 110620798B
Authority
CN
China
Prior art keywords
ftp
connection
machine
ftp server
data
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
CN201810631533.8A
Other languages
English (en)
Other versions
CN110620798A (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 Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201810631533.8A priority Critical patent/CN110620798B/zh
Publication of CN110620798A publication Critical patent/CN110620798A/zh
Application granted granted Critical
Publication of CN110620798B publication Critical patent/CN110620798B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种FTP连接的控制方法、系统、设备和存储介质,所述控制方法包括:在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则建立所述第一机器与所述FTP服务器之间的FTP连接。本发明实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题,且在专线连接网络发生故障时,保证整个集群内的机器可以正常传输文件。

Description

FTP连接的控制方法、系统、设备和存储介质
技术领域
本发明涉及通信管理技术领域,特别涉及一种FTP(File Transfer Protocol,文件传输协议)连接的控制方法、系统、设备和存储介质。
背景技术
随着网络平台的业务种类与范围的不断发展,越来越多的第三方合作系统和用户希望通过网络途径来获取数据和信息。为了保证数据与信息传输的安全性,一般通过专线连接网络来实现网络平台与第三方合作系统或用户之间的网络连接,并以FTP协议交换XML(可扩展标记语言)文件等格式数据。
但是,FTP协议具有不稳定性,容易发生数据丢失或连接中断的现象。其次,现有技术中网络平台的业务应用一般都是集群化部署在多个机器中,且每个机器都是通过FTP协议与FTP源服务器连接,在每个机器进程启动后,都去创建FTP连接并进行文件的上传与下载,对下载的文件进行相应的解析后去执行业务处理,再给第三方合作系统或用户上传回执文件,整个过程是同步的且理论上进程会一直不断的创建FTP连接,因此,缺少集群管理FTP连接的方法,在机器过多时会创建大量FTP连接,易导致FTP服务器负载过高,甚至发生宕机的危险。
同时,文件下载过程和解析执行过程也存在发生失败的可能,比如下载文件格式不正确,执行解析时服务出现不可调用等情况。每次失败后都需要连接FTP源服务器进行重新下载,从而造成浪费FTP资源并且会导致FTP连接一直在处理重复的文件,吞吐量低。
另外,专线连接网络不是高可用的,一旦发生故障无法及时切换,只能等物理修复,导致业务影响面随着时间越发严重。
因此,现有技术中存在不能对集群内的FTP连接进行限流和管理,不支持对下载或解析处理失败时进行断点续传,且不能够实现专线连接网络高可用。
发明数据
本发明要解决的技术问题是现有技术中的存在不能对集群内的FTP连接进行限流和管理,不支持对下载或解析处理失败时进行断点续传,且不能够实现专线连接网络高可用的缺陷,目的在于提供一种FTP连接的控制方法、系统、设备和存储介质。
本发明是通过下述技术方案来解决上述技术问题:
本发明提供一种FTP连接的控制方法,所述控制方法包括:
在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则建立所述第一机器与所述FTP服务器之间的FTP连接。
较佳地,所述控制方法还包括:
在所述第一机器在与所述FTP服务器之间建立FTP连接后,所述第一机器从所述FTP服务器中下载数据或向所述FTP服务器中上传数据。
较佳地,所述控制方法还包括:
当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,则断开设定数量的机器与所述FTP服务器之间的FTP连接。
较佳地,所述控制方法还包括:
当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,判断与所述FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则断开所述若干第二机器与所述FTP服务器之间的FTP连接;
在断开所述第二机器与所述FTP服务器之间的FTP连接后,继续判断与所述FTP服务器进行FTP连接的机器数量是否小于所述数量阈值,若否,则拒绝所述第一机器与所述FTP服务器之间建立FTP连接。
较佳地,所述控制方法还包括:
判断与所述FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断所述第三机器处于空闲状态的时间是否大于时间阈值,若是,则断开所述第三机器与所述FTP服务器之间的FTP连接。
较佳地,所述建立所述第一机器与所述FTP服务器之间的FTP连接的步骤之后还包括:
对所述第一机器的参数信息和/或FTP连接成功的信息进行存储。
较佳地,所述控制方法还包括:
当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
较佳地,所述对所述下载的数据进行处理的步骤依次包括:日志记录操作、文件归档操作、文件解析信息操作、所述文件数据处理信息操作、所述业务处理信息操作;
所述控制方法还包括:
当对所述下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储所述目标操作的断点信息;
在下一次对所述下载的数据进行处理时,根据所述断点信息直接执行所述目标操作。
较佳地,所述控制方法还包括:
在集群内的机器与所述FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,所述专线连接网络为用于实现所述集群中的机器与所述FTP服务器之间、所述FTP服务器与第三方合作系统之间的数据传输的网络;
当用于所述集群中的第四机器与所述FTP服务器进行FTP连接的所述专线连接网络发生故障时,所述第四机器向所述协调性组件写入表示所述第四机器与所述FTP服务器连接异常的数据;
所述协调性组件根据所述连接异常的数据调用所述集群中的备用机器,并建立所述备用机器与所述FTP服务器之间的FTP连接。
本发明还提供一种FTP连接的控制系统,所述控制系统包括第一判断模块和执行模块;
所述第一判断模块用于在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则调用所述执行模块;
所述执行模块用于建立所述第一机器与所述FTP服务器之间的FTP连接。
较佳地,所述控制系统还包括操作模块;
所述操作模块用于在所述第一机器在与所述FTP服务器之间建立FTP连接后,所述第一机器从所述FTP服务器中下载数据或向所述FTP服务器中上传数据。
较佳地,所述执行模块还用于当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,则断开设定数量的机器与所述FTP服务器之间的FTP连接。
较佳地,所述控制系统还包括第二判断模块;
所述第二判断模块用于当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,判断与所述FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则调用所述执行模块;
所述执行模块还用于断开所述若干第二机器与所述FTP服务器之间的FTP连接;
所述第一判断模块还用于在断开所述第二机器与所述FTP服务器之间的FTP连接后,继续判断与所述FTP服务器进行FTP连接的机器数量是否小于所述数量阈值,若否,则调用所述执行模块;
所述执行模块还用于拒绝所述第一机器与所述FTP服务器之间建立FTP连接。
较佳地,所述控制系统还包括第三判断模块;
所述第三判断模块用于判断与所述FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断所述第三机器处于空闲状态的时间是否大于时间阈值,若是,则调用所述执行模块;
所述执行模块还用于断开所述第三机器与所述FTP服务器之间的FTP连接。
较佳地,所述控制系统还包括存储模块;
所述存储模块用于对所述第一机器的参数信息和/或FTP连接成功的信息进行存储。
较佳地,所述控制系统还包括第一创建模块;
所述第一创建模块用于当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
较佳地,所述控制系统包括断点信息处理模块和断点信息执行模块;
所述第一创建模块用于当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程依次对下载的数据进行日志记录操作、文件归档操作、文件解析信息操作、所述文件数据处理信息操作、所述业务处理信息操作;
所述断点信息处理模块用于当对所述下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储所述目标操作的断点信息;
所述断点信息执行模块用于在下一次对所述下载的数据进行处理时,根据所述断点信息直接执行所述目标操作。
较佳地,所述控制系统还包括第二创建模块、故障处理模块和调用模块;
所述第二创建模块用于在集群内的机器与所述FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,所述专线连接网络为用于实现所述集群中的机器与所述FTP服务器之间、所述FTP服务器与第三方合作系统之间的数据传输的网络;
所述故障处理模块用于当用于所述集群中的第四机器与所述FTP服务器进行FTP连接的所述专线连接网络发生故障时,通过所述第四机器向所述协调性组件写入表示所述第四机器与所述FTP服务器连接异常的数据;
所述调用模块用于通过所述协调性组件根据所述连接异常的数据调用所述集群中的备用机器,并调用所述执行模块;
所述执行模块用于建立所述备用机器与所述FTP服务器之间的FTP连接。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行计算机程序时实现上述的FTP连接的控制方法。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的FTP连接的控制方法的步骤。
积极进步效果在于:
本发明中,在集群内的机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则建立机器与所述FTP服务器之间的FTP连接;同时,当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,生成并存储所述目标操作的断点信息,在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作,实现断点续传;当所述专线连接网络发生故障(不通畅)时,通过切换成新的专线连接网络,从而实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题,且在专线连接网络不通时,保证整个集群内的机器可以正常传输文件。
附图说明
图1为本发明实施例1的FTP连接的控制方法的流程图;
图2为本发明实施例2的FTP连接的控制方法的流程图;
图3为本发明实施例3的FTP连接的控制方法的流程图;
图4为本发明实施例4的FTP连接的控制系统的模块示意图;
图5为本发明实施例5的FTP连接的控制系统的模块示意图;
图6为本发明实施例6的FTP连接的控制系统的模块示意图;
图7为本发明实施例7中的实现FTP连接的控制方法的电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例的FTP连接的控制方法对应的应用情景为:
首先,被服务方通过第三方合作系统(如拍卖系统),将需要服务的产品(如拍卖中心的拍品)的相关文件数据(如XML文件)打包并发送至FTP服务器;
然后,服务方根据与被服务方约定的服务内容,通过网关系统与FTP服务器建立FTP连接,从FTP服务器中下载对应的文件数据,并发送至服务方的执行系统(如服务方的拍卖中心)进行处理,最后通过前台系统进行显示;
同时,服务方的网关系统接收执行系统向其反馈的当前被服务的产品的动态情况(如当前拍卖中心中拍品的成交情况),打包并上传至FTP服务器中,以便被服务方可以通过第三方合作系统登录FTP服务器及时获知当前被服务的产品的动态进程。
如图1所示,本实施例的FTP连接的控制方法包括:
S101、集群内的第一机器发起FTP连接的请求;
S102、判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则继续步骤S103;
S103、建立第一机器与FTP服务器之间的FTP连接。
具体地,定时启动处于网关系统的集群内的机器开始执行任务(如上传或者下载XML文件),首先在机器发起FTP连接的请求时,通过判断与FTP服务器进行FTP连接的机器的数量是否在数量阈值内,保证FTP服务器在其负载能力范围内正常工作,再创建机器与FTP服务器之间进行FTP连接,进而实现对XML文件的上传或者下载。
利用redis缓存模块(一种存储模块)具有灵活扩展、易维护、存储容量大等特点,可以长时间存储大量数据,且读写效率高等性能,通过redis缓存模块构造分布式锁来选举集群中的可以创建FTP连接并进行文件上传与下载的机器,利用选举成功的机器去创建FTP连接。
同时,通过redis缓存模块构造分布式锁来管理集群中的FTP连接,即每一个机器的进程通过分布式的FTP管理器来控制及管理FTP连接,通过分布式的FTP管理器可以在集群中多个机器并发连接请求时,控制集群中与FTP服务器进行FTP连接的机器数量。
另外,也可以采用Memcached(一种分布式内存对象缓存系统)等其他分布式独立缓存服务来替换redis缓存模块。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接,实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况。
实施例2
如图2所示,本实施例的FTP连接的控制方法是对实施例1的进一步改进,具体地:
本实施例的FTP连接的控制方法还包括:
步骤S103之前还包括:
通过断开设定数量的机器,保护FTP服务器,避免了FTP服务器由于负载过高导致宕机的情况。
具体地,当与FTP服务器进行FTP连接的机器数量大于或者等于数量阈值时,则断开设定数量的机器与FTP服务器之间的FTP连接。或,
当与FTP服务器进行FTP连接的机器数量大于或者等于数量阈值时,判断与FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则断开若干第二机器与FTP服务器之间的FTP连接;
在断开第二机器与FTP服务器之间的FTP连接后,继续判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若否,则拒绝第一机器与FTP服务器之间建立FTP连接。
通过定时检查集群中处于空闲状态时间过长的机器,防止过多的FTP连接占用资源。具体地,
判断与FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断第三机器处于空闲状态的时间是否大于时间阈值,若是,则断开第三机器与FTP服务器之间的FTP连接。
步骤S103之后还包括:
对第一机器的参数信息和/或FTP连接成功的信息进行存储。
具体地,将机器的参数信息和FTP连接成功的信息等存储在redis缓存模块中,用以分布式FTP管理以及复用FTP连接。
步骤S103之后还包括:
S104、在第一机器在与FTP服务器之间建立FTP连接后,第一机器从FTP服务器中下载数据或向FTP服务器中上传数据。
在下载数据时,当从FTP服务器的文件列表中找到需要下载的目标文件时,为了防止多个机器同时下载同一文件的情况,需对找到的目标文件进行加锁处理,以防止重复下载,造成资源浪费。
S105、当第一机器从FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
其中,也可以通过分布式任务调度或单机的Quratz(一种开源项目)替代异步线程技术对对下载的数据进行处理。
步骤S105具体包括:
S1051、当第一机器从FTP服务器中下载数据成功后,创建一个异步线程对下载的数据依次进行日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作;
其中,通过ActionChain(执行责任链)模块下载XML文件,以及对下载的数据依次进行日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作等。
S1052、当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储目标操作的断点信息;
S1053、在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作。
其中,将目标操作的断点信息存储至MongoDB数据库(基于分布式文件存储的数据库)中。MongoDB数据库具有稳定、安全、存储容量大、存储格式灵活、高伸缩等特点,适合长时间存储大量归档和日志数据等。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接;同时,当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,生成并存储目标操作的断点信息,在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作,实现断点续传,从而实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题。
实施例3
如图3所示,本实施例的FTP连接的控制方法是对实施例2的进一步改进,具体地:
步骤S103之后还包括:
S106、在集群内的机器与FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,专线连接网络为用于实现集群中的机器与FTP服务器之间、FTP服务器与第三方合作系统之间的数据传输的网络;
另外,协调性组件为Zookeeper组件(一种分布式服务框架),其基本数据单元为ZNode(一种节点类型),用于支持机器向协调性组件写入表示机器与FTP服务器连接异常的数据,以及向集群中的机器推送已解除专线连接网络故障的通知消息。
S107、当用于集群中的第四机器与FTP服务器进行FTP连接的专线连接网络发生故障时,第四机器向协调性组件写入表示第四机器与FTP服务器连接异常的数据;
S108、协调性组件根据连接异常的数据调用集群中的备用机器,并建立备用机器与FTP服务器之间的FTP连接。
另外,本实施例的FTP连接的控制方法中,还可以配置集群中与FTP服务器进行FTP连接的机器数量等,继而支持spring注入、zookeeper同步、单实例内存(spring注入、zookeeper同步、单实例内存均属于基于本实施例的FTP连接的控制方法实现的扩展功能)等多种形式。
下面具体说明创建FTP连接进行下载数据和上传数据的过程:
1)创建FTP连接进行下载数据的过程:
定时启动集群内机器开始执行任务时,机器发起与FTP服务器进行FTP连接的请求;
当与远程的FTP服务器进行FTP连接的机器数量小于数量阈值时,建立机器与FTP服务器之间的FTP连接;
获取FTP服务器中的文件列表;
从文件列表中查找到需要下载的目标文件,对该目标文件进行加锁处理并进行下载,即保证一个目标文件只能同时由一个机器进行处理;
查询MongoDB数据库中的文件下载任务表中是否有该目标文件的下载记录,若没有,则将此次下载文件任务记录到MongoDB数据库中的文件下载任务表中,并将其任务状态标记为新建下载。
在文件下载成功后,将其存储至本地机器的临时目录中,并将MongoDB数据库中的文件下载任务表的该下载记录状态标识为下载完成;若下载失败,则重新下载,并将任务状态标记为下载失败。
创建异步线程,在线程池中选择一个线程对该下载文件进行解析及相关业务处理,同时主线程继续下载文件。在业务处理成功时,将任务状态标记为解析执行完成。在业务处理失败时,则重新通过本地临时文件继续解析业务处理(业务断点续传)。
将上述下载文件的过程产生的数据全部上传至服务方的存储平台,同时将任务状态标记为已经上传至存储平台,实现对文件的归档备份;若上传失败,则重复上传,直至上传成功;当重复上传的次数超过设定次数时,发出告警信号,发送邮件并返回上传失败的信息,且将任务状态标记为已经上传存储平台失败。
在上传存储平台成功后,删除本地对应的文件,删除FTP服务器中对应的文件,避免文件占用磁盘空间,同时将任务状态依次标记为本地文件删除,FTP服务器文件删除。
集群中的机器向FTP服务器上传表示文件下载完成的回执,同时将任务状态标记为回执已发送;
第三方合作系统通过FTP服务器接收集群中的机器向FTP服务器上传的回执,再向FTP服务器发送表示已经收到该回执的响应文件。
2)创建FTP连接进行上传数据的过程:
网关系统接收执行系统(如拍卖中心)发送的拉取文件数据(如拉取前台系统中的当前拍品的成交数据)的通知消息;
查询MongoDB数据库中的文件任务记录表数据,判断该拉取数据是否属于正在向FTP服务器上传的数据或者属于已经收到响应回执的数据,若是,结束该上传数据的操作;若否,则创建文件状态为正在上传状态并存放至MongoDB数据库中;
网关系统从执行系统中拉取对应的文件数据,并将拉取出的文件数据转换为XML文件,然后压缩成ZIP包,存放在本地临时目录;
创建机器与FTP服务器之间进行FTP连接,将压缩成ZIP包上传至FTP服务器中;
判断是否上传成功,若失败,则重试上传,当重试次数超过设定次数阈值时,将文件上传状态日志状态记录为上传失败并存储至MongoDB数据库中,并发出告警并邮件通知相关负责人员;
当上传成功后,将文件上传状态日志状态记录为上传成功并存储至MongoDB数据库中。
另外,当上传成功后,建立网关系统与存储平台之间的连接,将压缩的ZIP包上传至存储平台进行备份,判断是否成功上传至存储平台,若失败,则重试上传,当重试次数超过设定次数阈值时,将上传至存储平台的状态记录为上传失败,并抛出异常重试。
当上传数据成功后,网关系统保持监控被服务方的第三方合作系统是否向FTP服务器发送响应的回执文件,若有回执文件,则从FTP服务器中拉取该回执文件,并通过回执文件对应的响应码(如1表示响应成功,0表示响应失败)来判断第三方合作系统是响应成功还是响应失败,当响应失败后,将响应状态记录为响应失败并存储至MongoDB数据库中,发出告警并抛出异常重试。
其中,本实施例中的每一执行步骤都有任务状态标记,以方便进行数据断点续传,保证在文件下载或解析操作失败时,不用再连接FTP服务器进行重复下载。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接;同时,当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,生成并存储目标操作的断点信息,在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作,实现断点续传;当专线连接网络发生故障(不通畅)时,通过切换成新的专线连接网络,从而实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题,且在专线连接网络不通时,保证整个集群内的机器可以正常传输文件。
实施例4
如图4所示,本实施例的FTP连接的控制系统对应的应用情景为:
首先,被服务方通过第三方合作系统(如拍卖系统),将需要服务的产品(如拍卖中心的拍品)的相关文件数据(如XML文件)打包并发送至FTP服务器;
然后,服务方根据与被服务方约定的服务内容,通过网关系统与FTP服务器建立FTP连接,从FTP服务器中下载对应的文件数据,并发送至服务方的执行系统(如服务方的拍卖中心)进行处理,最后通过前台系统进行显示;
同时,服务方的网关系统接收执行系统向其反馈的当前被服务的产品的动态情况(如当前拍卖中心中拍品的成交情况),打包并上传至FTP服务器中,以便被服务方可以通过第三方合作系统登录FTP服务器及时获知当前被服务的产品的动态进程。本实施例的FTP连接的控制系统包括第一判断模块1和执行模块2。
第一判断模块1用于在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则调用执行模块;
执行模块2用于建立第一机器与FTP服务器之间的FTP连接。
具体地,定时启动处于网关系统的集群内的机器开始执行任务(如上传或者下载XML文件),首先在机器发起FTP连接的请求时,通过判断与FTP服务器进行FTP连接的机器的数量是否在数量阈值内,保证FTP服务器在其负载能力范围内正常工作,再创建机器与FTP服务器之间进行FTP连接,进而实现对XML文件的上传或者下载。
利用redis缓存模块具有灵活扩展、易维护、存储容量大等特点,可以长时间存储大量数据,且读写效率高等性能,通过redis缓存模块构造分布式锁来选举集群中的可以创建FTP连接并进行文件上传与下载的机器,利用选举成功的机器去创建FTP连接。
同时,通过redis缓存模块构造分布式锁来管理集群中的FTP连接,即每一个机器的进程通过分布式的FTP管理器来控制及管理FTP连接,通过分布式的FTP管理器可以在集群中多个机器并发连接请求时,控制集群中与FTP服务器进行FTP连接的机器数量。
另外,也可以采用Memcached(一种分布式内存对象缓存系统)等其他分布式独立缓存服务来替换redis缓存模块。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接,实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况。
实施例5
如图5所示,本实施例的FTP连接的控制系统是对实施例4的进一步改进,具体地:
控制系统还包括操作模块3、第二判断模块4、第三判断模块5、存储模块6、第一创建模块7、断点信息处理模块8和断点信息执行模块9。
操作模块3用于在第一机器在与FTP服务器之间建立FTP连接后,第一机器从FTP服务器中下载数据或向FTP服务器中上传数据。
在下载数据时,当从FTP服务器的文件列表中找到需要下载的目标文件时,为了防止多个机器同时下载同一文件的情况,需对找到的目标文件进行加锁处理,以防止重复下载,造成资源浪费。
通过断开设定数量的机器,保护FTP服务器,避免了FTP服务器由于负载过高导致宕机的情况。具体地,执行模块2还用于当与FTP服务器进行FTP连接的机器数量大于或者等于数量阈值时,则断开设定数量的机器与FTP服务器之间的FTP连接。
第二判断模块4用于当与FTP服务器进行FTP连接的机器数量大于或者等于数量阈值时,判断与FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则调用执行模块;
执行模块2还用于断开若干第二机器与FTP服务器之间的FTP连接;
第一判断模块1还用于在断开第二机器与FTP服务器之间的FTP连接后,继续判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若否,则调用执行模块;
执行模块2还用于拒绝第一机器与FTP服务器之间建立FTP连接。
通过定时检查集群中处于空闲状态时间过长的机器,防止过多的FTP连接占用资源。具体地,
第三判断模块5用于判断与FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断第三机器处于空闲状态的时间是否大于时间阈值,若是,则调用执行模块;
执行模块2还用于断开第三机器与FTP服务器之间的FTP连接。
存储模块6用于对第一机器的参数信息和/或FTP连接成功的信息进行存储。
具体地,将机器的参数信息和FTP连接成功的信息等存储在redis缓存模块中,用以分布式FTP管理以及复用FTP连接。
第一创建模块7用于当第一机器从FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
其中,也可以通过分布式任务调度或单机的Quratz(一种开源项目)替代异步线程技术对对下载的数据进行处理。
第一创建模块7用于当第一机器从FTP服务器中下载数据成功后,创建一个异步线程依次对下载的数据进行日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作;
其中,通过ActionChain(执行责任链)模块下载XML文件,以及对下载的数据依次进行日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作等。
断点信息处理模块8用于当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储目标操作的断点信息;
断点信息执行模块9用于在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作。
其中,将目标操作的断点信息存储至MongoDB数据库(基于分布式文件存储的数据库)中。MongoDB数据库具有稳定、安全、存储容量大、存储格式灵活、高伸缩等特点,适合长时间存储大量归档和日志数据等。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接;同时,当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,生成并存储目标操作的断点信息,在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作,实现断点续传,从而实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题。
实施例6
如图6所示,本实施例的FTP连接的控制系统是对实施例5的进一步改进,具体地:
控制系统还包括第二创建模块10、故障处理模块11和调用模块12。
第二创建模块10用于在集群内的机器与FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,专线连接网络为用于实现集群中的机器与FTP服务器之间、FTP服务器与第三方合作系统之间的数据传输的网络;
另外,协调性组件为Zookeeper组件(一种分布式服务框架),其基本数据单元为ZNode(一种节点类型),用于支持机器向协调性组件写入表示机器与FTP服务器连接异常的数据,以及向集群中的机器推送已解除专线连接网络故障的通知消息。
故障处理模块11用于当用于集群中的第四机器与FTP服务器进行FTP连接的专线连接网络发生故障时,通过第四机器向协调性组件写入表示第四机器与FTP服务器连接异常的数据;
调用模块12用于通过协调性组件根据连接异常的数据调用集群中的备用机器,并调用执行模块;
执行模块2用于建立备用机器与FTP服务器之间的FTP连接。
另外,本实施例的FTP连接的控制方法中,还可以配置集群中与FTP服务器进行FTP连接的机器数量等,继而支持spring注入、zookeeper同步、单实例内存(spring注入、zookeeper同步、单实例内存均属于基于本实施例的FTP连接的控制方法实现的扩展功能)等多种形式。
下面结合一例子具体说明:
1)创建FTP连接进行下载数据的过程:
定时启动集群内机器开始执行任务时,机器发起与FTP服务器进行FTP连接的请求;
当与远程的FTP服务器进行FTP连接的机器数量小于数量阈值时,建立机器与FTP服务器之间的FTP连接;
获取FTP服务器中的文件列表;
从文件列表中查找到需要下载的目标文件,对该目标文件进行加锁处理并进行下载,即保证一个目标文件只能同时由一个机器进行处理;
查询MongoDB数据库中的文件下载任务表中是否有该目标文件的下载记录,若没有,则将此次下载文件任务记录到MongoDB数据库中的文件下载任务表中,并将其任务状态标记为新建下载。
在文件下载成功后,将其存储至本地机器的临时目录中,并将MongoDB数据库中的文件下载任务表的该下载记录状态标识为下载完成;若下载失败,则重新下载,并将任务状态标记为下载失败。
创建异步线程,在线程池中选择一个线程对该下载文件进行解析及相关业务处理,同时主线程继续下载文件。在业务处理成功时,将任务状态标记为解析执行完成。在业务处理失败时,则重新通过本地临时文件继续解析业务处理(业务断点续传)。
将上述下载文件的过程产生的数据全部上传至服务方的存储平台,同时将任务状态标记为已经上传至存储平台,实现对文件的归档备份;若上传失败,则重复上传,直至上传成功;当重复上传的次数超过设定次数时,发出告警信号,发送邮件并返回上传失败的信息,且将任务状态标记为已经上传存储平台失败。
在上传存储平台成功后,删除本地对应的文件,删除FTP服务器中对应的文件,避免文件占用磁盘空间,同时将任务状态依次标记为本地文件删除,FTP服务器文件删除。
集群中的机器向FTP服务器上传表示文件下载完成的回执,同时将任务状态标记为回执已发送;
第三方合作系统通过FTP服务器接收集群中的机器向FTP服务器上传的回执,再向FTP服务器发送表示已经收到该回执的响应文件。
2)创建FTP连接进行上传数据的过程:
网关系统接收执行系统(如拍卖中心)发送的拉取文件数据(如拉取前台系统中的当前拍品的成交数据)的通知消息;
查询MongoDB数据库中的文件任务记录表数据,判断该拉取数据是否属于正在向FTP服务器上传的数据或者属于已经收到响应回执的数据,若是,结束该上传数据的操作;若否,则创建文件状态为正在上传状态并存放至MongoDB数据库中;
网关系统从执行系统中拉取对应的文件数据,并将拉取出的文件数据转换为XML文件,然后压缩成ZIP包,存放在本地临时目录;
创建机器与FTP服务器之间进行FTP连接,将压缩成ZIP包上传至FTP服务器中;
判断是否上传成功,若失败,则重试上传,当重试次数超过设定次数阈值时,将文件上传状态日志状态记录为上传失败并存储至MongoDB数据库中,并发出告警并邮件通知相关负责人员;
当上传成功后,将文件上传状态日志状态记录为上传成功并存储至MongoDB数据库中。
另外,当上传成功后,建立网关系统与存储平台之间的连接,将压缩的ZIP包上传至存储平台进行备份,判断是否成功上传至存储平台,若失败,则重试上传,当重试次数超过设定次数阈值时,将上传至存储平台的状态记录为上传失败,并抛出异常重试。
当上传数据成功后,网关系统保持监控被服务方的第三方合作系统是否向FTP服务器发送响应的回执文件,若有回执文件,则从FTP服务器中拉取该回执文件,并通过回执文件对应的响应码(如1表示响应成功,0表示响应失败)来判断第三方合作系统是响应成功还是响应失败,当响应失败后,将响应状态记录为响应失败并存储至MongoDB数据库中,发出告警并抛出异常重试。
其中,本实施例中的每一执行步骤都有任务状态标记,以方便进行数据断点续传,保证在文件下载或解析操作失败时,不用再连接FTP服务器进行重复下载。
本实施例中,在集群内的机器发起FTP连接的请求时,通过事先判断与FTP服务器进行FTP连接的机器数量,再建立机器与FTP服务器之间的FTP连接;同时,当对下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,生成并存储目标操作的断点信息,在下一次对下载的数据进行处理时,根据断点信息直接执行目标操作,实现断点续传;当专线连接网络发生故障(不通畅)时,通过切换成新的专线连接网络,从而实现了对集群内的机器与FTP服务器之间的FTP连接进行限流和管理,避免了FTP服务器由于负载过高导致宕机的情况,解决了重复下载文件造成FTP资源浪费的问题,且在专线连接网络不通时,保证整个集群内的机器可以正常传输文件。
实施例7
图7为本发明实施例7提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例1-3中任意一实施例中的FTP连接的控制方法。图7显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
总线33包括数据总线、地址总线和控制总线。
存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。
存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1-3中任意一实施例中的FTP连接的控制方法。
电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图7所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例8
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例1-3中任意一实施例中的FTP连接的控制方法中的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例1-3中任意一实施例中的FTP连接的控制方法中的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式作出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

Claims (16)

1.一种FTP连接的控制方法,其特征在于,所述控制方法包括:
在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则建立所述第一机器与所述FTP服务器之间的FTP连接;
所述控制方法还包括:
在所述第一机器在与所述FTP服务器之间建立FTP连接后,所述第一机器从所述FTP服务器中下载数据或向所述FTP服务器中上传数据;并且在下载数据时,从所述FTP服务器的文件列表中查找所述下载数据对应的目标文件,对所述目标文件进行加锁处理;
所述控制方法还包括:
判断与所述FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断所述第三机器处于空闲状态的时间是否大于时间阈值,若是,则断开所述第三机器与所述FTP服务器之间的FTP连接。
2.如权利要求1所述的FTP连接的控制方法,其特征在于,所述控制方法还包括:
当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,则断开设定数量的机器与所述FTP服务器之间的FTP连接。
3.如权利要求1所述的FTP连接的控制方法,其特征在于,所述控制方法还包括:
当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,判断与所述FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则断开所述若干第二机器与所述FTP服务器之间的FTP连接;
在断开所述第二机器与所述FTP服务器之间的FTP连接后,继续判断与所述FTP服务器进行FTP连接的机器数量是否小于所述数量阈值,若否,则拒绝所述第一机器与所述FTP服务器之间建立FTP连接。
4.如权利要求1所述的FTP连接的控制方法,其特征在于,所述建立所述第一机器与所述FTP服务器之间的FTP连接的步骤之后还包括:
对所述第一机器的参数信息和/或FTP连接成功的信息进行存储。
5.如权利要求1所述的FTP连接的控制方法,其特征在于,所述控制方法还包括:
当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
6.如权利要求5所述的FTP连接的控制方法,其特征在于,所述对下载的数据进行处理的步骤依次包括:日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作;
所述控制方法还包括:
当对所述下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储所述目标操作的断点信息;
在下一次对所述下载的数据进行处理时,根据所述断点信息直接执行所述目标操作。
7.如权利要求1所述的FTP连接的控制方法,其特征在于,所述控制方法还包括:
在集群内的机器与所述FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,所述专线连接网络为用于实现所述集群中的机器与所述FTP服务器之间、所述FTP服务器与第三方合作系统之间的数据传输的网络;
当用于所述集群中的第四机器与所述FTP服务器进行FTP连接的所述专线连接网络发生故障时,所述第四机器向所述协调性组件写入表示所述第四机器与所述FTP服务器连接异常的数据;
所述协调性组件根据所述连接异常的数据调用所述集群中的备用机器,并建立所述备用机器与所述FTP服务器之间的FTP连接。
8.一种FTP连接的控制系统,其特征在于,所述控制系统包括第一判断模块和执行模块;
所述第一判断模块用于在集群内的第一机器发起FTP连接的请求时,判断与FTP服务器进行FTP连接的机器数量是否小于数量阈值,若是,则调用所述执行模块;
所述执行模块用于建立所述第一机器与所述FTP服务器之间的FTP连接;
所述控制系统还包括操作模块;
所述操作模块用于在所述第一机器在与所述FTP服务器之间建立FTP连接后,所述第一机器从所述FTP服务器中下载数据或向所述FTP服务器中上传数据;并且在下载数据时,从所述FTP服务器的文件列表中查找所述下载数据对应的目标文件,对所述目标文件进行加锁处理;
所述控制系统还包括第三判断模块;
所述第三判断模块用于判断与所述FTP服务器进行FTP连接的至少一个第三机器是否处于空闲状态,若是,则继续判断所述第三机器处于空闲状态的时间是否大于时间阈值,若是,则调用所述执行模块;
所述执行模块还用于断开所述第三机器与所述FTP服务器之间的FTP连接。
9.如权利要求8所述的FTP连接的控制系统,其特征在于,所述执行模块还用于当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,则断开设定数量的机器与所述FTP服务器之间的FTP连接。
10.如权利要求8所述的FTP连接的控制系统,其特征在于,所述控制系统还包括第二判断模块;
所述第二判断模块用于当与所述FTP服务器进行FTP连接的机器数量大于或者等于所述数量阈值时,判断与所述FTP服务器进行FTP连接的若干第二机器是否处于下载数据状态或上传数据状态,若否,则调用所述执行模块;
所述执行模块还用于断开所述若干第二机器与所述FTP服务器之间的FTP连接;
所述第一判断模块还用于在断开所述第二机器与所述FTP服务器之间的FTP连接后,继续判断与所述FTP服务器进行FTP连接的机器数量是否小于所述数量阈值,若否,则调用所述执行模块;
所述执行模块还用于拒绝所述第一机器与所述FTP服务器之间建立FTP连接。
11.如权利要求8所述的FTP连接的控制系统,其特征在于,所述控制系统还包括存储模块;
所述存储模块用于对所述第一机器的参数信息和/或FTP连接成功的信息进行存储。
12.如权利要求8所述的FTP连接的控制系统,其特征在于,所述控制系统还包括第一创建模块;
所述第一创建模块用于当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程对下载的数据进行处理。
13.如权利要求12所述的FTP连接的控制系统,其特征在于,所述控制系统包括断点信息处理模块和断点信息执行模块;
所述第一创建模块用于当所述第一机器从所述FTP服务器中下载数据成功后,创建一个异步线程依次对下载的数据进行日志记录操作、文件归档操作、文件解析信息操作、文件数据处理信息操作、业务处理信息操作;
所述断点信息处理模块用于当对所述下载的数据进行处理的步骤中的一目标操作在操作过程中发生错误时,则生成并存储所述目标操作的断点信息;
所述断点信息执行模块用于在下一次对所述下载的数据进行处理时,根据所述断点信息直接执行所述目标操作。
14.如权利要求8所述的FTP连接的控制系统,其特征在于,所述控制系统还包括第二创建模块、故障处理模块和调用模块;
所述第二创建模块用于在集群内的机器与所述FTP服务器之间建立FTP连接时,创建一个用于存放专线连接网络的连接信息的协调性组件;
其中,所述专线连接网络为用于实现所述集群中的机器与所述FTP服务器之间、所述FTP服务器与第三方合作系统之间的数据传输的网络;
所述故障处理模块用于当用于所述集群中的第四机器与所述FTP服务器进行FTP连接的所述专线连接网络发生故障时,通过所述第四机器向所述协调性组件写入表示所述第四机器与所述FTP服务器连接异常的数据;
所述调用模块用于通过所述协调性组件根据所述连接异常的数据调用所述集群中的备用机器,并调用所述执行模块;
所述执行模块用于建立所述备用机器与所述FTP服务器之间的FTP连接。
15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行计算机程序时实现权利要求1-7中任一项所述的FTP连接的控制方法。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的FTP连接的控制方法。
CN201810631533.8A 2018-06-19 2018-06-19 Ftp连接的控制方法、系统、设备和存储介质 Active CN110620798B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810631533.8A CN110620798B (zh) 2018-06-19 2018-06-19 Ftp连接的控制方法、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810631533.8A CN110620798B (zh) 2018-06-19 2018-06-19 Ftp连接的控制方法、系统、设备和存储介质

Publications (2)

Publication Number Publication Date
CN110620798A CN110620798A (zh) 2019-12-27
CN110620798B true CN110620798B (zh) 2023-08-04

Family

ID=68920509

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810631533.8A Active CN110620798B (zh) 2018-06-19 2018-06-19 Ftp连接的控制方法、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN110620798B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111417119A (zh) * 2020-03-16 2020-07-14 纳瓦电子(上海)有限公司 无线级联的方法
CN112527756A (zh) * 2020-12-17 2021-03-19 厦门市美亚柏科信息股份有限公司 一种文件同步操作方法、终端设备及存储介质
CN115022307A (zh) * 2022-07-26 2022-09-06 中银金融科技有限公司 一种文件下载方法及装置、存储介质及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1425990A (zh) * 2001-12-13 2003-06-25 杨磊 因特网多服务器文件并发下载技术
JP2004265397A (ja) * 2003-02-14 2004-09-24 Masuo Yoshimoto デジタルコンテンツ配送システム、デジタルコンテンツ配送方法、及びエッジサーバ
CN103118076A (zh) * 2013-01-11 2013-05-22 烽火通信科技股份有限公司 升级服务器集群系统及其负载均衡方法
CN103559093A (zh) * 2013-11-15 2014-02-05 北京中指实证数据信息技术有限公司 一种服务器资源的配置方法及装置
CN105577772A (zh) * 2015-12-17 2016-05-11 腾讯科技(北京)有限公司 素材接收方法、素材上传方法及装置
CN106412091A (zh) * 2016-10-25 2017-02-15 广东欧珀移动通信有限公司 数据传输的控制方法、装置及系统
CN106453116A (zh) * 2016-11-03 2017-02-22 上海斐讯数据通信技术有限公司 一种基于sdn的最小连接负载均衡方法和系统
CN108064054A (zh) * 2016-11-09 2018-05-22 大唐移动通信设备有限公司 一种lte系统中的ftp文件传输监控方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7320032B2 (en) * 2001-05-21 2008-01-15 Hewlett-Packard Development Company, L.P. Methods and structure for reducing resource hogging
US8271641B2 (en) * 2006-10-04 2012-09-18 Salesforce.Com, Inc. Method and system for governing resource consumption in a multi-tenant system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1425990A (zh) * 2001-12-13 2003-06-25 杨磊 因特网多服务器文件并发下载技术
JP2004265397A (ja) * 2003-02-14 2004-09-24 Masuo Yoshimoto デジタルコンテンツ配送システム、デジタルコンテンツ配送方法、及びエッジサーバ
CN103118076A (zh) * 2013-01-11 2013-05-22 烽火通信科技股份有限公司 升级服务器集群系统及其负载均衡方法
CN103559093A (zh) * 2013-11-15 2014-02-05 北京中指实证数据信息技术有限公司 一种服务器资源的配置方法及装置
CN105577772A (zh) * 2015-12-17 2016-05-11 腾讯科技(北京)有限公司 素材接收方法、素材上传方法及装置
CN106412091A (zh) * 2016-10-25 2017-02-15 广东欧珀移动通信有限公司 数据传输的控制方法、装置及系统
CN106453116A (zh) * 2016-11-03 2017-02-22 上海斐讯数据通信技术有限公司 一种基于sdn的最小连接负载均衡方法和系统
CN108064054A (zh) * 2016-11-09 2018-05-22 大唐移动通信设备有限公司 一种lte系统中的ftp文件传输监控方法及系统

Also Published As

Publication number Publication date
CN110620798A (zh) 2019-12-27

Similar Documents

Publication Publication Date Title
CN109714192B (zh) 一种监控云平台的监控方法及系统
EP3617886B1 (en) Hot backup system, hot backup method, and computer device
US7925856B1 (en) Method and apparatus for maintaining an amount of reserve space using virtual placeholders
CN110620798B (zh) Ftp连接的控制方法、系统、设备和存储介质
CN109582443A (zh) 基于分布式存储技术的虚拟机备份系统
US10484449B2 (en) Email webclient notification queuing
CN103780417A (zh) 一种基于云硬盘的数据库故障转移方法及装置
WO2020088533A1 (zh) 虚拟化平台的容灾方法及装置
CN105159795A (zh) 数据同步方法、装置和系统
CN110445697B (zh) 视频大数据云平台设备接入服务方法
TWI709865B (zh) 運維數據讀取裝置及其讀取方法
CN113626286A (zh) 多集群实例处理方法、装置、电子设备及存储介质
US9092396B2 (en) Standby system device, a control method, and a program thereof
CN110972497A (zh) 虚拟化平台的容灾方法及装置
CN102185717A (zh) 业务处理设备、方法及系统
CN114356650A (zh) 数据备份方法、装置、设备、系统及存储介质
CN109002263A (zh) 存储容量的调整方法及装置
CN112130889A (zh) 资源的管理方法和装置、存储介质、电子装置
CN116166470A (zh) Redis集群克隆复制方法及装置、介质、设备
JP2015114952A (ja) ネットワークシステム、監視制御装置およびソフトウェア検証方法
CN101799780A (zh) 配置信息文件处理方法、系统及服务器、虚拟磁带库设备
CN109240608B (zh) 一种配置信息同步方法及装置
CN102111783A (zh) 原子命令回滚方法及终端
CN112883103A (zh) 集群间数据转移的方法和装置
CN117041893B (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