2017-03-23 1 views
0

인바운드 어댑터로 폴링 된 파일이 있습니다. 환경적인 관점에서 볼 때, NAS 위치 (모든 노드에서 볼 수 있음)에있는 단일 파일을 여러 노드가 폴링하여 중복을 방지합니다.스프링 통합 : 다중 노드 환경에서 중복을 방지합니다.

놀랍게도 파일을 반복해서 넣으면 노드가 서버를 다시 시작할 때까지 파일을 선택하지 않습니다.

스프링 컨텍스트에서이 정보를 유지하는 데 스프링 통합이 사용되었다고 가정하면이 노드를 놓친 경우 다른 노드가 선택해야합니다.

누군가가이 깃발이나 메타 데이터가 어디에 유지되고 있는지 설명 할 수 있습니까?

답변

1

the documentation을 참조하십시오. FileSystemPersistentAcceptOnceFileListFilterMetadataStore을 공유해야합니다.

기본적으로 메모리 기반 AcceptOnceFileListFilter이 사용되며 파일 수정 시간은 고려하지 않습니다.

AcceptOnceFileListFilter는 상태를 메모리에 저장합니다. 시스템 재시작 상태에서 상태를 유지하려면 FileSystemPersistentAcceptOnceFileListFilter를 대신 사용해보십시오. 이 필터는 허용 된 파일 이름을 MetadataStore 구현 (9.5 절. "메타 데이터 저장소")에 저장합니다. 이 필터는 파일 이름과 수정 된 시간을 일치시킵니다.

관련 문제