FAQ-ftp导入数据文件过多时报错:与ftp服务器建立连接失败

问题描述/异常栈

数据传输使用FTP Reader时,当路径下:
一个文件时,任务运行正常;
五个文件时,任务偶现报错;
十个文件时,必然报错
报错内容:
Caused by: java.lang.RuntimeException:与ftp服务器建立连接失败,请检查用户名和密码是否正确:[mssage:host =xxxxxxxx,username = xxx ,port = xx]

FAQ-ftp导入数据文件过多时报错:与ftp服务器建立连接失败,请检查用户名和密码是否正确 - 图1

解决方案

修改ftp端配置,主要关注以下配置是否需要修改:
1max_clients: 允许的最大总连接数。
2max_per_ip: 允许来自同一IP的最大连接数。
3idle_session_timeout: 控制连接无操作后的超时断开时间。
4data_connection_timeout: 数据连接的超时时间。
5pasv_min_port, pasv_max_port: 定义被动的端口范围。
6idle_session_timeout:传输大文件时,虽然数据在流动,但控制连接可能处于空闲状态。如果  设置过小(如300秒),传输时间超过这个限制,服务器就会主动断开控制连接。

问题原因

ftp性能不足,当一次性传输多个文件时,ftp端的最大总连接数、同IP最大连接数、端口范围、超时时间存在限制

作者:曹俊