우리는 외부 시스템으로부터의 많은 메시지가 비동기 적으로 처리되어야한다는 시나리오가있다. 현재 디자인은 외부 시스템으로부터 msg를 풀기 위해 매 5 분마다 깨어나서 원시 msg를 지속시킨 다음 메시지 ID를 ExecutorChannel에 보낸다. , 소비자 (잠재적으로 많은)가 채널에서 소비 할 수 있습니다.스프링 통합 대기열, 현재 대기열 크기를 얻는 방법은 무엇입니까?
우리가 직면 한 문제는 msg가 대기열에있는 동안 시스템 충돌을 처리하는 방법입니다. 작업이 일어날 때마다 대기열에없는 원시 메시지가 있는지 알아보기 위해 DB를 조사해야합니다.
가장 쉬운 방법은 현재 큐 크기를 쿼리하고 큐에 msg보다 원시 메시지가 많은지 확인하는 것입니다. 그래서 내가 가진 질문은 : ExecutorChannel에 대한 모든 API가 대기열의 크기를 알 수 있습니까? 또는 다른 제안?
들으 제이슨