296.4. 요청 응답 사용

SEDA 구성 요소는 요청 응답 사용을 지원합니다. 여기서 호출자는 Async 경로가 완료될 때까지 기다립니다. 예를 들면 다음과 같습니다.

from("mina:tcp://0.0.0.0:9876?textline=true&sync=true").to("seda:input");

from("seda:input").to("bean:processInput").to("bean:createResponse");

위의 경로에는 들어오는 요청을 수락하는 포트 9876에 TCP 리스너가 있습니다. 요청이 seda:input 대기열로 라우팅됩니다. Request Reply 메시지이므로 응답을 기다립니다. seda:input 큐의 소비자가 완료되면 원래 메시지 응답에 대한 응답을 복사합니다.

참고

2.2까지: SEDA 또는 VM 을 통해 Reply를 사용하여 2개의 끝점에서만 작동합니다. A → B → C 등으로 보내 끝점을 연결할 수 없습니다. A → B 사이에서만 구현 논리는 매우 간단합니다. 3개 이상의 끝점을 지원하기 위해 논리는 대기 중인 스레드 간의 순서 및 알림을 처리하는 것이 훨씬 더 복잡해집니다. 이 기능은 Camel 2.3 이상에서 개선되어 있으므로 원하는 만큼 엔드포인트를 연결할 수 있습니다.