2012-04-09 13 views
6

$ .ajaxからRabbitMQにデータを送信する方法はありますか?REST API for rabbitmq

私のアプリケーションは数千のWebクライアント(jsで書かれています)とWCF RESTサービスで構成されています。今ではアプリケーションのスケーラブルポイントを作成する方法を理解しようとしています。この考え方は、一方の側に置かれたjsクライアントからのメッセージを受け取るrabbitmqインスタンスと、キューから保留中のメッセージを受け取っているWCFワークフローサービスのインスタンスを持つことです。

私はAMQPとHTTPがかなり異なることを理解しています。

そこで質問です - ウサギのMQまたはそれ

答えて

4

RabbitMQのdeveloper tools pageには多くのサードパーティのHTTPプラグインが掲載されており、AMQP over HTTPアクセスが可能なexperimental JSON-RPC pluginもあります。

RabbitJSSockJSを参照して、Rabbitチームがnode.jsとWebSocketsの世界にメッセージングをもたらすために何をしているのかを確認してください。 3.4.3リリースの

0

はいためのゲートウェイのいくつかの並べ替えのためのRESTインターフェースがあります。あなたが調べることができるrabbitmq_jsonrpc_channelプラグインRabbitMQ Plugins

これは、HTTP経由でJSONでAMQPを提供しているかのように見えます。

1

RabbitMQのREST APIドキュメントは、ここで見つけることができます:

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

また、管理タスク以外のメッセージを公開することができます。

リンクドキュメントから

重要な注意:

は、HTTP APIで取得/パブリッシュパスがテスト・メッセージ、診断などを注入するための を意図していることに注意してください - 彼らは 信頼性の高い配信を実装し、そうすべきではありませんメッセージングの一般的なAPIよりもむしろ ではなく、システム管理者のツールとして扱われます。

+3

あなたが指摘したのは、RabbitMQ Management PluginのバンドルされたHTTP APIです。これは基本的にRESTfulなAPIです。ただし、信頼性の高いメッセージ配信は実装されていないため、運用システムで使用することはお勧めできません。 "HTTP APIのパブリッシュ/取得パスは、テストメッセージや診断などを注入するためのものであり、信頼性の高い配信を実装していないため、メッセージングの一般的なAPIではなくシステム管理者のツールとして扱う必要があることに注意してください" – Devy