4.
What is MessageQueue?
•SoftLayerが提供する不揮発共有Queue
– 不揮発
•入れておけばとりあえず消えない
– 共有
•ネットワーク越しに読み書き可能
– Queue
•順序を維持した構造,
イメージ:FIFO(First In First Out)
•MessageQueueはどの様に使えるの?
15/03/20 Japan SoftLayer UG 4
5.
MessageQueueの仕組み:書き込み
•SoftLayer内部のQueueストアに
書き込みを保存
– SoftLayer内外からQueue追加が可能
15/03/20 Japan SoftLayer UG 5
SoftLayer内部
SoftLayer外部
Queue
List
Q1:Server
Message1
Q2:Client
Message1
Message2
1つのQueueに
複数のメッセージを
格納できる
Queueに
名前を付与
Queue2
Queue1
6.
MessageQueueの仕組み:読み出し
•同じくQueueストアから読み出し
– Queueの一覧/指定したQueueのMessage
– 消す時は明示的に指定して消去
15/03/20 Japan SoftLayer UG 6
SoftLayer内部
SoftLayer外部
Queue
List
Q1:Server
Message1
Q2:Client
Message2
Message3
Q1:Server
Q2:Client
Message2
Message3
Q1:Serverを
削除
7.
どう使うと便利?
•Queueである利点を活かす
– 要求と処理が非同期でいい環境
•依頼をQueueで受けても,
すぐ処理に取り掛かる必要は無い
– 処理順番は守りたい
•Queueで受けた順番通りに処理したい
15/03/20 Japan SoftLayer UG 7
8.
私のユースケース:要望
•大学院での実験のデータ処理
– 実験が終わる時間は環境ごとに異なる
•入力が非同期
– 先に終わった実験のデータを
先に処理してほしい
•順番を維持して欲しい
•MessageQueueを利用した
データ処理環境を作成
15/03/20 Japan SoftLayer UG 8
9.
私のユースケース:環境
•大学での実験が終わり次第,データを
アップロードし,処理をQueueに追加(黒線)
•処理サーバは
Queueを読んで
順にデータを処理
(赤線)
•それぞれの動きは独立
15/03/20 Japan SoftLayer UG 9
処理サーバ
SoftLayer内部
データサーバ
大学の実験環境
キューの流れ
データの流れ
10.
私のユースケース:利点1
•処理サーバを柔軟に追加可能
– 各々がQueueを読みだして処理するだけ
15/03/20 Japan SoftLayer UG 10
処理サーバ
SoftLayer内部
データサーバ
大学の実験環境
キューの流れ
データの流れ
追加した処理サーバが
それぞれ独立して
Queueを処理可能
11.
私のユースケース:利点2
•クライアント増加にも
柔軟に対応可能
– Queueとデータの
転送設定を
行うだけ
15/03/20 Japan SoftLayer UG 11
処理サーバ
SoftLayer内部
データサーバ
大学の実験環境
新しいクライアントも
Queueとデータを
投げるようにするだけ
12.
私のユースケース:結果…
•新しい実験のログデータ処理も
自動で処理される
•処理サーバを
追加して
処理を高速化
15/03/20 Japan SoftLayer UG 12
処理サーバ
SoftLayer内部
データサーバ
大学の実験環境
13.
本日のまとめ
•SoftLayerにはMessageQueueという
機能が存在
– Queueを作って入出力の順番を
保持してくれる
– ネットワーク越しにキューを共有可能
•サーバ/クライアントの制御に便利
–安い!
•使い倒しても100円/月にも行かない
15/03/20 Japan SoftLayer UG 13
Be the first to comment