2016-10-27 6 views
0

아파치의 ActiveMQ은 다양한 protocols을 광범위하게 지원하므로 cross-language-client을 쉽게 찾을 수 있습니다.ActiveMQ에서 사용하는 다양한 메시징 프로토콜의 상호 운용성

설명서를 읽으면 ActiveMQ가 명시 적으로 명시되지는 않았지만 프로토콜을 변환 할 수 있다는 인상을받습니다. 따라서 예를 들어 AMQP 프로토콜을 사용하는 자바 클라이언트는 STOMP을 사용하여 PHP 클라이언트가 가져온 메시지를 대기열에 넣을 수 있습니다.

제 질문은 : 맞습니까? 그렇다면 ActiveMQ가 프로토콜에 의해 지원되는 다른 기능을 다루는 방법에 대해 궁금합니다. 예를 들어, AMQP는 STOMP가 대기하지 않는 동안 메시지가 대기열에 들어갈 수 있음을 명확하게 설명합니다.

답변

1

예, ActiveMQ는 클라이언트 간의 상호 운용성 및 투명성을 지원하는 것이 가장 좋습니다.

내부적으로 모든 메시지는 JMS API 사양을 기반으로하는 공통 형식으로 매핑된다는 점에 유의해야합니다.

각 프로토콜 설명서 페이지에서 다양한 프로토콜을 JMS에 매핑하는 방법을 확인할 수 있습니다. 특히 메타 데이터 및 페이로드 형식.

AMQP의 경우 JMS와 같은 형식으로 매핑을 사용할지 또는 단순히 "있는 그대로"메시지를 전달 할지를 결정할 수 있습니다. 그러나 전환이 완벽하지 않으므로 최선을 다하면 사례를 시험해보고 충분히 좋은지 확인하십시오.

http://activemq.apache.org/stomp.html

http://activemq.apache.org/amqp.html

http://activemq.apache.org/mqtt.html