19.3. Camel에서 Avro RPC 사용

위에서 언급한 바와 같이 Avro는 http 및 netty와 같은 여러 전송에 대한 RPC 지원도 제공합니다. Camel은 이 두 가지 전송에 대한 소비자와 생산자를 제공합니다.

avro:[transport]:[host]:[port][?options]

지원되는 전송 값은 현재 http 또는 netty입니다.

2.12 이후에는 URI에 메시지 이름을 바로 지정할 수 있습니다.

avro:[transport]:[host]:[port][/messageName][?options]

소비자의 경우 이를 통해 동일한 소켓에 여러 개의 경로가 연결됩니다. 올바른 경로로 디스패치하는 것은 avro 구성 요소에서 자동으로 수행됩니다. messageName이 지정되지 않은 경로(있는 경우)는 기본값으로 사용됩니다.

avro ipc에 대한 camel 생산자를 사용할 때 "인" 메시지 본문에는 avro 프로토콜에 지정된 작업의 매개 변수가 포함되어야 합니다. "out" 메시지의 본문에 응답이 추가됩니다.

avro ipc에 camel avro 소비자를 사용하는 것과 유사한 방식으로, 요청 매개 변수는 생성된 교환의 "인" 메시지 본문에 배치되고 교환이 "out" 메시지의 본문을 처리하면 응답이 전송됩니다.

참고: 기본 소비자 매개변수는 배열로 래핑됩니다. If you've only one parameter, since 2.12 you can use singleParameter URI option to receive it direcly in the "in" message body without array wrapping.