4

我们正在开发一个 spring 批处理应用程序,它将在未来处理“大”文件。为了保持低内存签名,我们在这些文件的最小可能块上使用弹簧批处理。处理后,我们希望将结果写回SFTP,这也发生在输入文件的每个块中。

目前的做法如下:

StepExecutionListener.before()SftpOutboundAdapter:我们向with和 empty payload发送一条消息以FileExistsMode.REPLACE创建一个空文件(with .writing

Reader: 将读取输入文件

Processor:将使用结果增强输入并返回字符串列表

Writer: 将字符串列表发送给SftpOutboundAdapter另一个FileExistsMode.APPEND

StepExecutionListener.after():如果执行成功,我们将重命名文件以删除.writing后缀。

现在我看到有Streaming Inbound Adapters但我找不到Streaming Outbound Adapters。这真的是通过追加解决它的唯一/最佳方法吗?或者是否可以流式传输文件内容?

4

0 回答 0