У меня есть приложение интеграции весны, развернутое на двух узлах кластера. они опросают входящие файлы в одном каталоге с помощью входящего файлового адаптера. У меня есть конфигурация.Опрос папок в кластере
<file:inbound-channel-adapter id="inboundAdapter" channel="in" directory="file:${in.folder}" queue-size="100000"
filter="incoimngCompositeFilter">
<int:poller id="fileInboudPoller" fixed-rate="${in.interval}" receive-timeout="${file.in.timeout}" time-unit="SECONDS"
max-messages-per-poll="${file.in.max.messages}" task-executor="taskExecutor" />
</file:inbound-channel-adapter>
<bean id="incoimngCompositeFilter" class="org.springframework.integration.file.filters.CompositeFileListFilter">
<constructor-arg>
<list>
<bean class="org.springframework.integration.file.filters.FileSystemPersistentAcceptOnceFileListFilter">
<constructor-arg name="store" ref="redisMetaDataStore" />
<constructor-arg name="prefix" value="test"/>
</bean>
<bean class="org.springframework.integration.file.filters.RegexPatternFileListFilter">
<constructor-arg value="(?i)^(?!.*writing).*$" />
</bean>
</list>
</constructor-arg></bean><bean name="redisMetaDataStore" class="org.springframework.integration.redis.metadata.RedisMetadataStore">
<constructor-arg name="connectionFactory" ref="redisConnectionFactory" </bean><bean id="redisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="port" value="6379" />
</bean>
Я получаю прерывистые результаты. Иногда он обрабатывается без какой-либо проблемы, но когда-то один экземпляр пытается обработать файлы, которые уже обрабатываются другим экземпляром. Может ли кто-нибудь указать мне на образец с помощью FileSystemPersistentAcceptOnceFileListFilter и RedisMetadataStore?