rabbitmq

RabbitMQ 3.x から Queue のミラーリング方法が変更になった

今まで, Queue 作成時に指定していたミラーリングのパラメータは廃止になり, rabbitmqctl コマンドで指定するように変更なった. Perl の AnyEvent::RabbitMQ や Python の kombu(celery) で x-ha-policy を指定する方法は, RabbitMQ 2.x までしか通用しない.…

Python の amqplib とか py-amqp で Message を Consume する際, ヘッダに x-death が付与されていると落ちる件

データに謎の 'A' という型が定義されているのが問題. AMQP の Elementary domains を見たのだけれど 'A' が何か見当たらない…。助けて偉い人orz とりあえず, amqplib 1.0.2 は, 以下の黒魔術で回避可能. kombu 2.5.0 から amqplib に代わり py-amqp がデフ…

RabbitMQ のクラスタリング機能にキューのミラーリングが追加されたので RabbitFoot (AnyEvent::RabbitMQ) から試してみる

クラスタリングやキューのミラーリングの詳細は、下記参照の事。 RabbitMQ - Clustering Guide RabbitMQ - Highly Available Queues RabbitMQ をクラスタリングする 今回はサーバを複数用意できなかったので、一つのサーバ上で RabbitMQ を二つ起動する。 % …

RabbitMQ の Java Client を Scala から使う

下準備 下記から RabbitMQ Java Client をダウンロードする http://www.rabbitmq.com/java-client.html 「ant dist」でコンパイルすると「build/dist」配下に幾つかの jar が出来る。 今回は下記の二つを利用する。 commons-io-1.2.jar rabbitmq-client.jar …

Perl で作成した RabbitMQ 専用クライアントライブラリを AnyEvent と Coro で非同期化しました

以前、AMQP と RabbitMQ を学ぶために RabbitFoot という名前の Perl 版のクライアントライブラリを作成したのですが、非同期化して欲しいと要望を頂いたので、AnyEvent と Coro を利用してみました。 AnyEvent と Coro は、今回、初めての利用となるため、…

RabbitMQ でお手軽 Client-Server モデルを実現する

Erlang のコードは一行も出てきません。 以前作った RabbitFoot を使うので、Perl のコードしか出てきませんが、RabbitMQ(AMQP) を理解する助けになると思います。 事前準備 Client から Server へ Request を送るための Queue を用意します。 % /path/to/ra…

RabbitMQ を Perl から利用するため、AMQP Client と管理用のコマンドラインツールを作りました

素直な書き方をしている*1ので、コードを読んでもらえれば AMQP が何か解ります。*2 cooldaemon's RabbitFoot at master - GitHub AMQP Client の概要 RabbitFoot という名前です。内部で Net::AMQP を利用しています。 RabbitMQ 1.7.0 が対応している AMQP …

zsh 用の rabbitmqctl の補完関数を書きました

と言っても、やっつけ仕事ですが。 #compdef rabbitmqctl typeset -A opt_args local context state line _arguments : \ "*:argument:(stop stop_app start_app reset force_reset cluster status rotate_logs add_user delete_user change_password list_u…