apache-camel - Camel SFTP 文件传输,提高性能
问题描述
我在我的项目中使用 Apache Camel SFTP 组件,有一个用例,例如每秒向远程 FTP 服务器发送多达 1000 个(<50 KB)文件,但我们的代码似乎很难加班。我们保持 FTP 连接打开以供重复使用。
有什么方法可以通过打开到同一主机的多个连接来提高文件传输性能,例如maxConnectionsPerHost
,maxTotalConnections
?
解决方案
FTP/SFTP 生产者支持多个并发连接到具有相同设置的相同目标。您可以通过创建多个指向同一目标的路线来实现这一点。
例如,创建 10 个文件夹并从每个文件夹中收集 10 条路由并发送到同一个目标。然后有一条路线从源收集文件/消息并均匀发送到 10 个文件夹。
除了使用并发 FTP/SFTP 连接外,可能切换到其他自然支持高速并发多连接的协议(例如 HTTP、JMS)是更好的选择。
推荐阅读
- ios - 从swift访问objective-c中指向swift结构(Swift字符串)的指针的值
- c++ - 我试图在二维数组中的行之间找到最大值和最小值----最小值代码似乎正确但不起作用
- c# - 如何在 C# 中将字节数组转换为 HttpPostedFileBase?
- python - 如果 Elasticsearch 中存在删除记录 - Python 并获取已删除记录的计数
- ios - 如何使用 UIDcommentBrowserViewController 写入文件
- python - Selenium Chromedriver:找不到 Chrome 二进制文件
- reactjs - JSReact,删除除最后一项之外的任何动态添加的表单内容会擦除表单
- reactjs - 带有 MSAL 库的无限循环 React 示例
- html - HTML 表格中的 JavaScript 日期选择器
- excel - 如何用密码汇总文件夹中的excel文件