关于spring集成,如何横向扩展文件轮询?
假设为5s设置了一个文件轮询器来挑选.tif文件,并且spring集成代码作为引导项目运行在一台服务器上。该preventDuplicate()对文件poller有效。如果使用相同的代码部署另一台服务器,会发生什么情况?如果文件被两个服务器轮询,一个接一个,同一个文件被处理两次,如何防止?在这种情况下,最好的扩展方法是什么?
发布于 2019-02-26 04:52:04
如果您要扩展您的应用程序,您肯定需要开始考虑如何通过一些持久性存储在它们之间共享状态。
FileReadingMessageSource的集群范围内的preventDuplicate类比是一个FileSystemPersistentAcceptOnceFileListFilter,它可以配置一些可能的外部存储。Spring Integration中通过ConcurrentMetadataStore实现提供了一些选择:https://docs.spring.io/spring-integration/docs/current/reference/html/#metadata-store
否则就没有选择来阻止你所解释的行为。
https://stackoverflow.com/questions/54874370
复制相似问题