EWD 3
トレーニング・コース #6
ewd-xpressアプリ起動時に何が起こるか
( Caché を利用)
M/Gateway Developments Ltd.
Rob Tweed
訳: 日本ダイナシステム株式会社 嶋 芳成
ewd-xpress アプリケーション起動
• ewd-client 内で EWD.start() 関数によって起動
されるもの
• クライアント環境を生成
• すべては囲いの中で保護されます
• ewd-xpress のバックエンドとのWebソケット接続を
• ewd-xpress にクライアント・アプリケーションを登録
2016/9/5 EWD 3 トレーニング・コース #6 2
アプリケーションの登録
2016/9/5 EWD 3 トレーニング・コース #6 3
ブラウザ ewd-xpress
Caché
EWD.start()
アプリケーションの登録
ブラウザがバックエンドへの Webソケット接続を
確立する
2016/9/5 EWD 3 トレーニング・コース #6 4
ブラウザ ewd-xpress
Caché
socket.io
socket.io
アプリケーションの登録
2016/9/5 EWD 3 トレーニング・コース #6 5
ブラウザ ewd-xpress
Caché
socket.io
socket.io
ブラウザが WebSocket
メッセージを送信
type: ‘ewd-register’
application: ‘demo1’
アプリケーションの登録
メッセージを利用可能なワー
カーに渡す
type: ‘ewd-register’
application: ‘demo1’
2016/9/5 EWD 3 トレーニング・コース #6 6
ブラウザ ewd-xpress
Caché
socket.io
socket.io
アプリケーションの登録
新しい EWDセッションを生成
application: ‘demo1’
^CacheTempEWDSession
2016/9/5 EWD 3 トレーニング・コース #6 7
ブラウザ ewd-xpress
ewd-session Caché
socket.io
socket.io
アプリケーションの登録
新しいセッション・トークンが返される
token: ‘a0a033a9-393a-4e7a-9252-848c24ee5b02’
2016/9/5 EWD 3 トレーニング・コース #6 8
ブラウザ ewd-xpress
ewd-session Caché
socket.io
socket.io
アプリケーションの登録
2016/9/5 EWD 3 トレーニング・コース #6 9
ブラウザ ewd-xpress
Caché
socket.io
socket.io
トークンがブラウザに返される
token: ‘a0a033a9-393a-4e7a-9252-848c24ee5b02’
アプリケーションの登録
2016/9/5 EWD 3 トレーニング・コース #6 10
ブラウザ ewd-xpress
Caché
socket.io
socket.io
トークンはブラウザ内の容
器(closure)の中に保管
される
ewd-client の API でア
クセス可能だが、ユーザー
は直接アクセスできない
トークン
アプリケーションの登録
2016/9/5 EWD 3 トレーニング・コース #6 11
ブラウザ ewd-xpress
Caché
socket.io
socket.io
登録完了
ewd-registered イベン
トが発火
トークン
バックエンドの活動状況を調べる
• ewd-xpress の稼働するコマンド・プロンプトのウィン
ドウを見てください
worker 3884 received message: {“type”:”ewd-register”,”application”:”demo1”,”sock
etId”:”/#olQ1LbMUIKew3RefAAAE”}
master process received response from worker 3884: {“type”:”ewd-register”,”finis
hed”:true,”message”:{“token”:”a0a033a9-393a-4e7a-9252-848c24ee5b02”}}
*** handleMessage response {“type”:”ewd-register”,”finished”:true,”message”:”to
ken”:”a0a033a9-393a-437a-9252-848c24ee5b02”}}
Sending to socket #olQ1LbMUIKew3RefAAAE
Master process has finished processing response from worker process 3884 which i
s back in available pool
2016/9/5 EWD 3 トレーニング・コース #6 12
バックエンドの活動状況を調べる
worker 3884 received message:
{
“type”:”ewd-register”,
”application”:”demo1”,
”sock etId”:”/#olQ1LbMUIKew3RefAAAE”
}
2016/9/5 EWD 3 トレーニング・コース #6 13
バックエンドの活動状況を調べる
master process received response from worker 3884:
{
“type”:”ewd-register”,”
finis hed”:true,
”message”:{
“token”:”a0a033a9-393a-4e7a-9252-848c24ee5b02”
}
}
2016/9/5 EWD 3 トレーニング・コース #6 14
バックエンドの活動状況を調べる
sending to socket #olQ1LbMUIKew3RefAAAE
2016/9/5 EWD 3 トレーニング・コース #6 15
バックエンドの活動状況を調べる
Master process has finished processing response
from worker process 3884 which is back in available pool
2016/9/5 EWD 3 トレーニング・コース #6 16
これでアプリが ewd-xpress を使えます
• ブラウザはセッション・トークンを保持します
• バックエンドはそのトークンで索引されたセッションを保
持します
• さあ、動的な振る舞いをするアプリケーションを作り始め
ることができます
• パート#7 を参照してください
2016/9/5 EWD 3 トレーニング・コース #6 17

EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか