2011年10月7日金曜日

SQSってなんじゃ?(AWSコンソールにSQS登場)

SQSがAWSコンソールで利用可能になりました。 いままでキューに入ったメッセージを確認する手段がプログラム経由だったので、管理がしづらかったのですが、これでメッセージの状態がわかりやすくなると思います。 AWSコンソールを開くと、まずSQSのタブが増えていることに気づきます。
SQSタブをクリックすると、SQSのキュー一覧画面が表示され、いままで作ったキューが表示されているのがわかります。




まずはキューの作成をしてみます。



「Create New Queue」ボタンをクリックします。
すると、キュー作成のダイアログが開きます。


ここで、
  • Queue Name:キュー名
  • Default Visibility Timeout:読み込み後、他のクライアントから秘匿する秒数のデフォルト値、メッセージ送信時に指定しないとこれが使用される
  • Message Retention Period:メッセージの保持期間
  • Maximam Message Size:メッセージの最大サイズ
を指定して、「Create Queue」ボタンをクリックします。
すると、キュー一覧画面にもどり、キューのメッセージ数が1つ増えているのがわかります。


キューのメッセージを確認するには、キューを選択して、「Queue Action」から「View/Delete Messages」を選択します。
すると、メッセージ詳細ダイアログが立ち上がります。



「Start Polling Messages」を押すと、メッセージのフェッチが始まります。下のプログレスバーが終了すると全てのメッセージがチェックされ、一覧に表示されます。またフェッチを途中で中止した場合は右上の「Stop Now」を押します。
メッセージの詳細を見たい場合は、メッセージの「 More Details」を押すとメッセージ全文と付帯情報を確認できます。



キューの一覧にもどり、下部ペインの「Permission」タブで、各キューのパーミッションを設定できます。


ここでは各アクションごとに細かく権限ポリシーを設定でき、また「Edit Policy Document」ボタンでポリシーファイルのJSON的な書き方でも設定が可能です。

いままでプログラムで送信したキューの状態を知るにはそのプログラムを書かないといけないため、なんとなくブラックボックスになりがちだったSQSですが、このように、可視化されることでSQSがぐっと身近に感じられるようになり、管理も簡単になりました。とても助かります。

本日はここまで。