缩放文件轮询器|春季整合

时间:2019-02-25 20:43:20

标签: spring-integration spring-integration-dsl

关于spring集成,如何水平缩放文件轮询?

假设为5s设置了一个文件轮询器,以选择.tif个文件,并且作为引导项目的spring集成代码正在一台服务器上运行。 preventDuplicate()对文件poller有效。 如果使用相同的代码部署另一台服务器会怎样? 万一两个服务器都轮询文件,同一文件被处理两次,如何防止?在这种情况下扩展的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

如果要扩展应用程序,则肯定需要开始考虑如何通过一些持久性存储在它们之间共享状态。

preventDuplicate的整个集群范围内的FileReadingMessageSource类比是FileSystemPersistentAcceptOnceFileListFilter,可以用一些可能的外部存在的商店进行配置。通过ConcurrentMetadataStore实现,Spring Integration中存在一些选择:https://docs.spring.io/spring-integration/docs/current/reference/html/#metadata-store

否则,别无选择,无法阻止您解释的行为。