如果我有一个带有邮件服务器入站通道的 Spring 应用程序,那么处理每封电子邮件中的每个文件的最佳方法是什么(我大约每 1 分钟轮询一次,并获取 1 封带有多个附件的电子邮件)。
虽然我可以在接收通道(SimpleAsyncTaskExecutor 或 ThreadPoolTaskExecutor)上应用多线程,但这并没有多大帮助,因为如果我在电子邮件中附加了 10 个文件,它们的处理几乎都绑定到一个线程。
到目前为止,我一直保持同步,因为我想为每封电子邮件汇总一些数据,并在处理完所有文件后发送响应。我相信这也可以以更好的方式完成。
一般来说,我如何异步处理每封电子邮件中的每个文件,然后再次异步构建电子邮件回复?