2012-04-09 7 views
6

$ .ajax에서 RabbitMQ로 데이터를 보내려면 어떻게해야합니까?rabbitmq 용 REST API

내 응용 프로그램이 수천 개의 웹 클라이언트 (js로 작성)와 WCF REST 서비스로 구성되어 있으며 이제 응용 프로그램의 확장 가능 지점을 어떻게 만들 수 있는지 알아 내려고 노력 중입니다. 이 아이디어는 한쪽에 배치 된 js 클라이언트에서 메시지를 수신하는 rabbitmq 인스턴스와 대기열에서 보류중인 메시지를 가져 오는 WCF 워크 플로 서비스의 인스턴스를 갖는 것입니다.

AMQP와 HTTP는 꽤 다른 점을 알고 있습니다.

그래서 질문은 - 토끼 MQ에 대한 REST 인터페이스 또는이

답변

4

RabbitMQ의 developer tools page에는 제 3 자 HTTP 플러그인이 많이 나열되어 있으며 HTTP 액세스를 통해 AMQP를 허용하는 experimental JSON-RPC plugin도 제공됩니다.

RabbitJSSockJS을 살펴보면 Rabbit 팀이 node.js 및 WebSockets의 세계에 메시지를 전달하기 위해 수행하는 작업을 볼 수 있습니다. 3.4.3 릴리스에 대한

0

예에 대한 게이트웨이의 어떤 종류가있다. 연구 할 수있는 rabbitmq_jsonrpc_channel 플러그인 RabbitMQ Plugins

HTTP를 통해 AMQP를 JSON과 함께 제공하는 것처럼 보입니다.

1

RabbitMQ REST API 문서는 여기에서 찾을 수 있습니다 :

http://hg.rabbitmq.com/rabbitmq-management/raw-file/rabbitmq_v3_4_3/priv/www/api/index.html

또한 관리 작업 이외의 메시지를 게시 할 수 있습니다.

링크 된 문서에서

중요 사항 :

이 HTTP API의 수/게시 경로가 테스트 메시지, 진단 등을 주입 을위한 것입니다 있습니다 - 그들은 안정적인 전송을 구현할 그렇게해야하지 않습니다 메시징을위한 일반적인 API보다 sysadmin의 도구로 취급되어야합니다 ( ).

+3

위에서 지적한 RabbitMQ Management Plugin의 번들 된 HTTP API는 본질적으로 RESTful API입니다. 그러나 안정적인 메시징 전달을 구현하지 않으므로 프로덕션 시스템에서 사용하는 것은 좋지 않습니다. 인용구는 다음과 같습니다. "HTTP API의 게시/가져 오기 경로는 테스트 메시지, 진단 등을 주입하기위한 것이므로 신뢰할 수있는 전달을 구현하지 않으므로 메시징 용 일반 API가 아닌 sysadmin 도구로 처리해야합니다 . " – Devy