Performance apachecamel-SFTP延迟
我使用ApacheCamel与几个SFTP端点交互;对于每一个,我执行以下管道:Performance apachecamel-SFTP延迟,performance,ftp,apache-camel,sftp,latency,Performance,Ftp,Apache Camel,Sftp,Latency,我使用ApacheCamel与几个SFTP端点交互;对于每一个,我执行以下管道: 检索现有文件的列表 根据给定的一组规则验证这些文件 下载远程文件,以防验证成功 一切都像一个符咒(对于大约一百个不同的端点),用于检索文件列表的URI是这样的:sftp://${HOST}:${PORT}/${DIR}?username=${USER}&download=false&recursive=true&disconnect=true&sendEmptyMessageWhenIdle=true 问题在于
- 检索现有文件的列表
- 根据给定的一组规则验证这些文件
- 下载远程文件,以防验证成功
- 立即返回0个远程文件
- 列出远程内容需要几分钟的时间(由大约250个文件组成,每个文件大小从2KB到2MB)
- 什么会影响这种连接,导致不合理的延迟(没有网络问题,也没有要获取的巨大数据)
- 假设它取决于远程SFTP端点,既然SFTP中存在大量文件,为什么前面提到的Camel URI应该立即返回0个文件
感谢您的反馈。假设您的版本的Camel SFTP组件中没有bug
什么会影响这种连接,导致不合理的延迟 (没有网络问题,也没有需要获取的巨大数据) 考虑到您的应用程序可以立即返回0个远程文件,您的应用程序和目标服务器之间存在的问题源相对较低。对于服务器端,它可以是
- 要遍历的文件夹太多
- 服务器在每次调用时的动作都很慢
- 服务器端的其他问题
对于该情况(过多的文件夹遍历),考虑忽略无用和其他配置(例如)
的文件夹。 假设它取决于远程SFTP端点,为什么 前面提到的Camel URI立即返回0个文件,因为有很多 SFTP中是否存在文件 服务器端可能使用多个SFTP服务器节点,并且由于文件系统同步失败,一些节点为空当客户端被服务器端的网关重定向到任何空的SFTP服务器节点时,服务器节点返回0个远程文件作为响应并按原样报告客户端