Масштабируемый опросчик файлов | Интеграция Spring

Что касается весенней интеграции, как масштабировать опрос файлов по горизонтали?

Предположим, что для 5s установлено средство опроса файлов .tif, и код интеграции Spring в качестве загрузочного проекта выполняется на одном сервере. preventDuplicate() действует для файла poller. Что произойдет, если другой сервер будет развернут с таким же кодом? Если файл опрашивается обоими серверами, один за другим, один и тот же файл обрабатывается дважды, как это предотвратить? Каковы лучшие методы масштабирования в этом сценарии?


person Guru    schedule 25.02.2019    source источник


Ответы (1)


Если вы собираетесь масштабировать свое приложение, вам определенно нужно подумать о том, как разделить состояние между ними с помощью некоторого постоянного хранилища.

Общекластерная preventDuplicate аналогия для FileReadingMessageSource - это FileSystemPersistentAcceptOnceFileListFilter, который может быть настроен с некоторым возможным внешним хранилищем. Некоторый выбор присутствует в Spring Integration через ConcurrentMetadataStore реализации: https://docs.spring.io/spring-integration/docs/current/reference/html/#metadata-store.

В противном случае у вас нет выбора, чтобы предотвратить поведение, которое вы объясняете.

person Artem Bilan    schedule 25.02.2019