タグ

RabbitMQに関するyukimori_726のブックマーク (9)

  • RabbitMQ と再送について

    概要 : AMQP のプロトコルを読むと、一瞥して送信はパケットを送るだけ、受信はソケットを読み込むだけのようにも見える。しかしながら、実際に書いてみると、再送処理を自前で実装する必要があるため、現実には大変に複雑な処理が必要だ。 そもそもなぜ RabbitMQ を使うのかという話、あるいはなぜ再送が必要かという話たんにコンポーネント同士が疎結合で通信したいのであればわざわざ MQ を使う必然性は皆無である。ごくあたりまえに TCP で通信すればそれでいい。暗号通信が必要なら当然 SSL でいいし、パケットエンティティに依存する複雑な L7 リバースプロキシを MQ を使って実現することも、不可能ではないが、普通そういうのは varnish とかでやるだろう。 MQ において優れているのはデータの durability だ。つまり、一旦キューにためておけば、その両側のコンポーネントは好き勝

    RabbitMQ と再送について
  • RabbitMQ 3.6の新機能「Lazy Queues」の概要と検証

    はじめまして。DMM.comラボでインフラエンジニアをしております大山裕泰です。今回は、世の中にあまたある分散システムを支えるMQの雄の一つ「RabbitMQ」と、昨年12月にリリースされたv3.6.0において組み込まれた新機能「Lazy Queues」について、いったいどういうもので、どのように実装して、どんな結果になるのかをマルッと解説してしまおうと思います。稿によって、読者の皆さまが携わる分散システムの開発・運用に少しでも役立てばと思います。 RabbitMQについて 今回フォーカスするRabbitMQは、AMQPという柔軟性と信頼性に富んだメッセージ転送を実現するプロトコルの実装になります。AMQPは、2003年にJPMorgan Chaseで開発されたメッセージ転送プロトコルで、柔軟なメッセージルーティングの実現に加え、送信元から送られたメッセージのキューへの格納、およびキュー

    RabbitMQ 3.6の新機能「Lazy Queues」の概要と検証
  • AMQP and Nova — nova 29.1.0.dev150 documentation

    AMQP and Nova¶ AMQP is the messaging technology chosen by the OpenStack cloud. The AMQP broker, default to Rabbitmq, sits between any two Nova components and allows them to communicate in a loosely coupled fashion. More precisely, Nova components (the compute fabric of OpenStack) use Remote Procedure Calls (RPC hereinafter) to communicate to one another; however such a paradigm is built atop the p

  • 分散型メッセージングミドルウェアの詳細比較 | POSTD

    メッセージキュー について書いている連載の続きとして、今週末は分散型メッセージングを実行するための様々なライブラリを詳細に分析していきたいと思います。今回の分析では、APIの特性、デプロイメントやメンテナンスの容易さ、そしてパフォーマンスの質を含めて2、3種類の異なる側面に着目します。メッセージキューは2つのグループに分類できます。ブローカレス(brokerless)とブローカード(brokered)です。ブローカードなキューはエンドポイント間に何かしらのサーバを挟んでいますが、ブローカレスなメッセージキューは、メッセージ送信の際でも間に何も挾まないP2Pです。 今回分析するのは以下のシステムです。 ブローカレス nanomsg ZeroMQ ブローカード ActiveMQ gnatsd Kafka Kestrel NATS NSQ RabbitMQ Redis 取り掛かりとして、ほぼ間違

    分散型メッセージングミドルウェアの詳細比較 | POSTD
  • OpenStackの運用者たちは、何を考えているか

    5月18日より、カナダのバンクーバーで、「OpenStack Summit Vancouver 2015」が開催される。では、運用者はどうOpenStackを使い、何を課題と感じているのか。4月にNTTグループが開催した報告会の内容をお届けする。 OpenStackプロジェクトでは、2014年5月のOpenStack Summit Atlanta 2014で、開発者が集う各種のミーティングに加え、OpenStack運用担当者が情報を共有し、開発者へのフィードバックを行う場を新設したと発表した(初のOps Meetupはこれに先立つ2014年3月)。2015年5月18日より開催されるOpenStack Summit Vancouver 2015のプログラムにもOps Meetupは含まれているが、去る3月9、10日には、中間会合ともいえる「Ops Mid-Cycle Meetup」が、米フィ

    OpenStackの運用者たちは、何を考えているか
  • OpenStack Folsom構築 on Wheezy (4-1) コンポーネント設定① | 外道父の匠

    ここまででパッケージによる基盤が整いました。 が、そのままではいまいち動かないので、確認を含め各種コンポーネントの設定を行います。 長くなるので、2ページに分けて投稿します。 このページでは、環境変数設定/RabbitMQ/Memcached/Keystone/Nova を記載します。 おことわり ここは今後も微調整をしていくところですので、まだ変わる可能性があります(というかそもそも個別に違うし) 長くなるのでCinderとSwiftは別途記事を分けることにします 記載順序は来の構築手順とは異なりますが、重要な共有物を先に記載したためです ControllerNodeの指定はテストなのでIPアドレス直書きです 環境変数設定 この環境変数を設定しておくと、Openstack services (keystone, nova, glance, cinder, quantum, etc..)

    OpenStack Folsom構築 on Wheezy (4-1) コンポーネント設定① | 外道父の匠
  • RabbitMQ と再送について

    概要 : AMQP のプロトコルを読むと、一瞥して送信はパケットを送るだけ、受信はソケットを読み込むだけのようにも見える。しかしながら、実際に書いてみると、再送処理を自前で実装する必要があるため、現実には大変に複雑な処理が必要だ。 そもそもなぜ RabbitMQ を使うのかという話、あるいはなぜ再送が必要かという話たんにコンポーネント同士が疎結合で通信したいのであればわざわざ MQ を使う必然性は皆無である。ごくあたりまえに TCP で通信すればそれでいい。暗号通信が必要なら当然 SSL でいいし、パケットエンティティに依存する複雑な L7 リバースプロキシを MQ を使って実現することも、不可能ではないが、普通そういうのは varnish とかでやるだろう。 MQ において優れているのはデータの durability だ。つまり、一旦キューにためておけば、その両側のコンポーネントは好き勝

    RabbitMQ と再送について
  • RabbitMQの導入と、Spring AMQPを利用したメッセージ送受信

    スケールしやすいシステムを作るためのキーワード『非同期処理』。今回は、オープンソースのメッセージキューイングミドルウェアであるRabbitMQをSpring frameworkを使って実装する入門編です。Spring AMQPを利用することでJavaで簡単に非同期アプリケーションの開発が行えます。 はじめに 一般的に、システム間の連携は疎結合であることが望ましいとされています。その理由はさまざまですが、異なるシステム間での連携を疎結合にすると変更しやすい、障害時の影響を小さくしやすい、などがあげられます。 そういった実装を行うにあたって、しばしば利用されるものが「メッセージキューイング」です。メッセージングキューイングとは、簡単に言うとアプリケーション間のデータをメッセージとして、そのやり取りをキューと呼ばれる領域を利用して行うものです。メッセージキューイングでは送信側はメッセージの送信後

    RabbitMQの導入と、Spring AMQPを利用したメッセージ送受信
  • RabbitMQ: One broker to queue them all | RabbitMQ

    Why RabbitMQ?RabbitMQ is a reliable and mature messaging and streaming broker, which is easy to deploy on cloud environments, on-premises, and on your local machine. It is currently used by millions worldwide. InteroperableRabbitMQ supports several open standard protocols, including AMQP 1.0 and MQTT 5. There are multiple client libraries available, which can be used with your programming language

  • 1