使用 Spring Integration 对非常大的文件进行 SFTP 操作期间的堆使用情况

问题描述 投票:0回答:1

要求是使用 SFTP 将大量文件从客户的基础设施移动到我公司的基础设施。

每个文件的大小最大可达 5GB。我计划为此管道使用 Spring Integration 并使用 Spring 批处理作业来处理文件。

该示例可在文档中找到:https://docs.spring.io/spring-batch/reference/spring-batch-integration/launching-jobs-through-messages.html

我们将分配 16 个虚拟机,每个虚拟机有 4GB 堆。我怀疑 4 GB 的堆是否能够通过 SFTP 传输 5 GB 的文件。请指教。

sftp spring-integration-sftp
1个回答
0
投票

SFTP 中的缓冲区大小选项是 -b buffer_size

它指定用于数据传输的缓冲区大小。默认值为 32768 字节。最小允许值为 1024。最大允许值为 4194304 字节。

我需要分析应用程序的可用堆并相应地设置此缓冲区大小,以便应用程序耗尽堆并抛出 OOME。

© www.soinside.com 2019 - 2024. All rights reserved.