SlideShare a Scribd company logo
1 of 75
EWD 3
トレーニング・コース #2
EWD 3 の概要
M/Gateway Developments Ltd.
Rob Tweed
訳: 日本ダイナシステム株式会社 嶋 芳成
EWD 3 設計の目的
• EWD.js 独立した部品にモジュール化すること
• 一枚岩的な稼働環境ではない
• 部品のビュッフェから、混ぜて組み合わせる
• 他のモジュールと相互運用可能 例えば Express
• CachéやGT.Mにコアが依存しない
• これらは単に選択可能なデータベースである
• そのために、
• 最新のJavaScript技術を用いるようにコードを書き換える
• 部品の性能を最適化する
• APIを標準化し、完全にイベント駆動とする
EWD 3 の核となる部品
• ewd-qoper8
• 非常に高性能な Node.js メッセージ・キュー
• マスター Node.js プロセス:
• キューと配布機構
• 永続的なワーカー Node.js プロセスのプール
• これらのプロセスが、キューに置かれた要求を処理する
• マスター・プロセスのAPI
• this.addToQueue(messageObject)
• メッセージをキューに置く
• this.on(‘response’, function(responseObject,workerPid){…}
• ワーカーからの応答に対するハンドラー
EWD 3 の核となる部品
• ewd-qoper8
• ワーカーがメッセージを処理して何をするか、開発者が決定
• 開発者がワーカー・モジュールを自由に定義する
• ワーカーAPI
• this.on(‘message’,function(messageObject,send,finished){…}
• send(responseObject)
• オプション
• マスター・プロセスに応答を送信
• ワーカー・プロセスはそのまま
• finished(responseObject)
• 必須
• マスター・プロセスに最終結果を送信
• ワーカー・プロセスを解放し、利用可能なプールに戻す
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
Node.js ワーカー・プロセス
Node.js ワーカー・プロセス
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
addToQueue(obj)
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
カスタム
ワーカー・プロセス
ewd-qoper8
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
メッセージの処理開始
利用不可
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
メッセージの処理開始
利用不可
worker.on(‘message’, function(messageObj) {
//メッセージの処理
});
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用不可/処理中
addToQueue(obj)
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用不可/処理中
ewd-qoper8
カスタム
ワーカー・プロセス
ワーカー・プールのsizeに達していない
Node.js ワーカー・プロセス
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用不可/処理中
ewd-qoper8
カスタム
ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
Node.js ワーカー・プロセス
利用不可/処理中
Node.js ワーカー・プロセス
利用不可/処理中
新しいリクエ
ストがまだ
キューに
残っている
ワーカー・プールがすべて処理中で利用不可
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用不可/処理中
ewd-qoper8
カスタム
ワーカー・プロセス
ワーカー・プールが再度利用可になるとすぐに、
ewd-qoper8
カスタム
ワーカー・プロセス
Node.js ワーカー・プロセス
利用可
Node.js ワーカー・プロセス
利用不可/処理中
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用不可/処理中
ewd-qoper8
カスタム
ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
Node.js ワーカー・プロセス
利用不可/処理中
Node.js ワーカー・プロセス
利用不可/処理中
ワーカー・プールがすべて処理中で利用不可
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
処理終了
Finished(responseObject);
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
処理終了
this.on(‘response’, function(responseObject){
//この応答に対して何かをする
});
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用可能
ワーカーは自動的に利用可能プールに
戻される
注: ワーカーは使用後に廃棄されない
これにより、ワーカー・プロセスを続けて開
始するというオーバーヘッドをなくす
ewd-qoper8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
利用可能
ワーカー・プロセスは一時にひとつのリクエ
ストしか処理しない
完全に他から隔離された処理
ワーカー・プロセスは、処理終了するとた
だちに、次にキューに入れられたリクエス
トの処理が可能となる
ewd-qoper8 は建築用のブロック
• それのみでは実際には利用できない
• 完全に一般的な、汎用的なメッセージ・キュー
• EWD 3 というインフラの核となる部品で、EWD 3 の
他のモジュールがその上に乗る
• ewd-qoper8 は、他の EWD 3 モジュールとは独立して
用いることができ、Node.js の他のすべてのモジュールや
データベースと統合して用いることもできる
Express + ewd-qoper8
• Express は、Node.jsの標準的なWebサーバー
• REST、Webサービス、対話型アプリケーション
• Express は Node.js モジュール
• 「ミドルウェア」 を定義することでカスタマイズできる
• ewd-qoper8 は、Express のミドルウェアとして構成可
• クライアントから Express にリクエストを送信する
• ewd-qoper8 にルーティングする
• ewd-qoper8 がそれらをキューに格納し、処理する
• ewd-qoper8 は Express 経由で応答をクライアントに返す
ewd-qoper8 + Express
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
ewd-qoper8
カスタム
ワーカー・プロセス
Express
HTTP(S)
インターフェース
WebSocket
Socket.io
インターフェース
addToQueue(req)
ewd-qoper8 + Express
+ ewd-qoper8-express
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス ewd-qoper8
カスタム
ワーカー・プロセス
Express
HTTP(S)
インターフェース ewd-qoper8-
express
ewd-qoper8-express
Express への HTTPリクエストに、ewd-
qoper8を用いるのを自動化、単純化する
Express に特別なルータ関数を追加
app.use(‘/qoper8’, qx.router());
ewd-qoper8 + Express
+ ewd-qoper8-express
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス ewd-qoper8
カスタム
ワーカー・プロセス
Express
HTTP(S)
インターフェース ewd-qoper8-
express
ewd-qoper8-express
Express の req オブジェクトから作られる
メッセージには、ワーカーがバックエンドで処
理するのに必要な全情報が含まれる
- Path
- method
- headers
- query
- body
- その他
ewd-qoper8 のデータベース依存性
• ewd-qoper8 自身にはデータベース依存性はない
• キューはメモリー内
• マスターとワーカーは、単に Node.js のプロセス
• オプションとして、永続的なキューを追加可能
• ewd-qoper8-dbq
Caché または GT.M を利用してキューを永続化できる
ewd-qoper8 を Caché と併用する
• 別のモジュールを用いる
• ewd-qoper8-cache
• 通常はワーカープロセスが利用
• cache.node インターフェースモジュールを利用できるようにする
• cache.node は、InterSystems社の所有するモジュールで、
Cachéに含まれている
• JavaScript/Node.js から次のものにアクセスできる
• Caché の外部関数
• グローバル・ストレージ
• Caché のオブジェクトやメソッド
• JavaScript API は InterSystems社が定義
• 低水準
ewd-qoper8 + ewd-qoper8-cache
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
カスタム
ワーカー・プロセス
ewd-qoper8
ewd-qoper8-cahce
cahce.node
Caché
ewd-qoper8 + ewd-qoper8-gtm
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
カスタム
ワーカー・プロセス
ewd-qoper8
ewd-qoper8-gtm
nodem
GT.M
GT.M と併用するための同等モジュール
David Wicksell氏による cache.node をエ
ミュレートする GT.M用の NodeM モジュー
ルを用いる
ewd-qoper8 + ewd-qoper8-cache
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
カスタム
ワーカー・プロセス
ewd-qoper8
ewd-qoper8-cahce
cahce.node
Caché
関数
ewd-qoper8 + ewd-qoper8-cache
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
Node.js ワーカー・プロセス
カスタム
ワーカー・プロセス
ewd-qoper8
ewd-qoper8-cahce
cahce.node
Caché
グローバル
基本的な低レベルのMUMPS中心の
API
JavaScript中心のデータベース・アクセス
• ewd-qoper8-cache と ewd-qoper8-gtm は、
ewd-document-store を自動的にインストール
• ewd-document-store は、JavaScript 指向の、
グローバル・ストレージ・データベースの抽象化機能
• 「永続的なJavaScriptオブジェクト」
• ドキュメント・データベース
• JSONの粒度の細かいストレージ
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
永続的なJavaScriptオブジェクト
かつ
粒度の細かいドキュメント・データベース
ewd-document-store
myDocument = {
a: 123,
b: {
c1: ‘foo’,
c2: ‘foo2’
}
d: {
e1: {
f1: ‘bar1’,
f2: ‘bar2’
},
e2: {
f1: ‘bar1’,
f2: ‘bar2’,
f3: ‘bar3’
}
}
}
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
ewd-document-store
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
var f3node = new this.documentStore.DocumentNode(‘myDocument’, [‘d’, ‘e2’, ‘f3’]);
ewd-document-store
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
var value = f3Node.value; // ‘bar3’
ewd-document-store
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
var value = f3Node.parent.$(‘f2’).value; //’bar2’
ewd-document-store
myDocument = {
a: 123,
b: {
c1: ‘foo’,
c2: ‘foo2’
}
d: {
e1: {
f1: ‘bar1’,
f2: ‘bar2’
},
e2: {
f1: ‘bar1’,
f2: ‘bar2’,
f3: ‘bar3’
}
}
}
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
var docOnDisk = new this.documentStore.DocumentNode(‘myDocument’);
var localDoc = docOnDisk.getDocument();
ewd-document-store
myDocument = {
a: 123,
b: {
c1: ‘foo’,
c2: ‘foo2’
}
d: {
e1: {
f1: ‘bar1’,
f2: ‘bar2’
},
e2: {
f1: ‘bar1’,
f2: ‘bar2’,
f3: ‘bar3’
}
}
}
“a” 123
“b”
“c1” “foo”
“c2” “foo2”
“e1”
“f1” “bar1”
“f2” “bar2”
“f1” “bar1”
“f2” “bar2”
“f3” “bar3”
“e1”
“d”
myDocument
var docOnDisk = new this.documentStore.DocumentNode(‘myDocument’);
docOnDisk.setDocument(localDoc);
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
この強力かつ直感的な抽象化機能の
には同期アクセスが必要
従って、ewd-qoper8
データベースの同期アクセスのための
ewd-qoper8
• ワーカー・プロセスは、一時にひとつのリクエスト・オブジェ
クトしか処理しない
• データベース(や他の)入出力にブロッキングが発生して
も、他のリクエストの処理には何の影響もない
• 各リクエストは独立して処理され、他のワーカーからは隔離
されている
セッション
• EWD 3 によるWebアクセスはステートレス・モデルを
用いている
• クライアントからの各リクエストは別々のワーカープロセス
によって処理される
• クライアントからの一連のリクエストを通して、状態情報
を維持することが通常必要となる
• EWD Sessionがその機能を提供する
• ewd-session によって Session を生成し維持でき
る
• Session は、自動的に DocumentNode オブジェクトに
対応づけられる
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
セッションの格納場所は、DocumentNode オブジェクトに
射影される
ewd-session の API
• sessions.create(applicationName)
• 新しいセッションをひとつ作り、指定されたアプリケーションと
関連づける
• セッション・トークンを返す
• ランダムに生成された uuid 文字列
• sessions.authenticate(token)
• このトークンが有効で、期限切れになっていないことをチェック
• そのトークンに対応するセッション・オブジェクトまたはエラーを
返す
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
var session = sessions.create(‘vista’)
session.token を送り返す
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
var result = sessions.authenticate(token)
成功すれば result.session を、そうでなれば result.error
を返す
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
Session オブジェクトは、GlobalNode オブジェクトの拡張
Session特有のプロパティとメソッドを持つ
ewd-qoper8 + ewd-qoper8-cache
+ ewd-document-store + ewd-session
+ Express
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
Express
HTTP(S)
インターフェース
WebSocket
Socket.io
インターフェース
関数
予めパッケージされた上位モジュール
• ewd-xpress
• EWD.js の主機能を提供する
• ブラウザ・ベースの対話的なアプリケーション
• WebとRESTサービスをサポートすることも可能
• ewd-qoper8-vistapc
• VistA RPC への REST インターフェース
• ewd-feder8
• 連合、統合プラットフォーム
• ewd-express の拡張
• 軽量の企業規模のサービス・バス機能
ewd-xpress
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
Express
HTTP(S)
インターフェース
WebSocket
Socket.io
インターフェース
関数
ブラウザewd-client
ewd-qoper8-vistarpc
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
ewd-qoper8Node.js ワーカー・プロセス
cahce.node
Caché 及び VistA
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
Express
HTTP(S)
インターフェース
インターフェース
関数
REST
ewd-qoper8-
vistapc
シンボル・テーブル
関数
シンボル・テーブル
RPCs
ewd-qoper8-vistarpc
• ログイン: (POST)
• アクセスし、コードを検定する
• XUS サインオン・セットアップ
• XUS AV CODE
• エラーまたは “挨拶” オブジェクトを返す
• もし成功したら:
• 新しい Session を生成する
• シンボル・テーブルを Session に保存する
• DUZなどを含む
• RESTクライアントからの直接アクセスはない
• Authorizationトークン経由での間接アクセスのみ
• Session トークンと VistA の “挨拶” を返す
ewd-qoper8-vistarpc
• ログインしたら、runRPC:
• Authorization ヘッダー内の Session トークンを用いる
• POST:
• RPC 名
• RPC 引数オブジェクト
• Session からシンボル・テーブルをリストア
• DUZなどを含む
• ユーザーが RPC を実行できるかどうかを決定する
• 標準のMUMPS側の “通常のビジネス” ロジック
• RPC の結果を返す
• シンボル・テーブルを Session に保存する
ewd-feder8
マスターNode.jsプロセス
キュー
キュー・プロセス
または
ディスパッチャー
カスタム
ワーカー・プロセス
Node.js ワーカー・プロセス
cahce.node
Caché
ewd-qoper8-cahce ewd-document-store
グローバル
ewd-session
Express
HTTP(S)
インターフェース
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-xpress
ewd-feder8
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
リクエストのコピー
が、このグループ
の全サーバに送信
される
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
応答は非同期で受
信する
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
最後の応答を受信
する
応答を集めてオブ
ジェクトを生成する
名前付きグループ
ewd-feder8
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
グローバル
ewd-session
関数
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
応答を集め
マスター・プロセス経由でクライ
アントに返す
応答の集積
{
server_1_name: {responseObject},
server_2_name: {errorObject},
server_3_name: {responseObject}
}
インターセプトとカスタマイズ
• ewd-feder8 はイベントを発行する
• クライアントからのリクエストをひとつ受信したとき
• 末端のサーバーのひとつから応答ひとつを受信したとき
• 応答を集積して、クライアントに返す準備ができたとき
• これらを用いて、
• ewd-feder8 を通した流れをインターセプトできる
• ewd-feder8 の振る舞いをカスタマイズできる
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
応答をインターセプトする
多分、応答を修正し、そして/または
応答に応じたアクションを決定する
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
新しいリクエストをサーバーのグ
ループに転送する
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
集積した応答をインターセプトし、
何をするかを決定する
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
新しいリクエストを送信する
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
応答をインターセプトし、
最終応答を生成する
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
最終応答をクライアントに
返す
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
Cachéは、「ダンス」の間、
応答を格納し、最終応答をデー
タを作るのに利用できる
名前付きグループ
ewd-feder8 の「ダンス」
マスター・プロセス
REST
サーバー
ワーカー・プロセス
Express
cahce.node
Caché
ewd-qoper8-
cahce
ewd-document-store
ewd-session
REST /
Webサービス
クライアント
ewd-qoper8
ewd-feder8
REST
サーバー
REST
サーバー
Webサービス
サーバー
Webサービス
サーバー
EWD Sessions は、利用、管
理をより簡単にできる可能
性がある

More Related Content

What's hot

スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門Hisashi HATAKEYAMA
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)Akihiro Kuwano
 
Jvm operation casual talks
Jvm operation casual talksJvm operation casual talks
Jvm operation casual talksoranie Narut
 
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1Ryosuke IWANAGA
 
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLBYuki KAN
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)Takanori Sejima
 
5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing5.6 以前の InnoDB Flushing
5.6 以前の InnoDB FlushingTakanori Sejima
 
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするGulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするHayashi Yuichi
 
OpenJDK コミュニティに参加してみよう #jjug
OpenJDK コミュニティに参加してみよう #jjugOpenJDK コミュニティに参加してみよう #jjug
OpenJDK コミュニティに参加してみよう #jjugYuji Kubota
 
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないときNode.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないときRyunosuke SATO
 
Apacheチューニング
ApacheチューニングApacheチューニング
Apacheチューニングii012014
 
Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218akirahiguchi
 
MySQL 初めてのチューニング
MySQL 初めてのチューニングMySQL 初めてのチューニング
MySQL 初めてのチューニングCraft works
 
〜Apache Geode 入門 Multi-site(WAN)構成による クラスター連携
〜Apache Geode 入門 Multi-site(WAN)構成によるクラスター連携〜Apache Geode 入門 Multi-site(WAN)構成によるクラスター連携
〜Apache Geode 入門 Multi-site(WAN)構成による クラスター連携Akihiro Kitada
 
PHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことPHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことKentaro Matsui
 
Handlersocket etc. 20110906
Handlersocket etc. 20110906Handlersocket etc. 20110906
Handlersocket etc. 20110906akirahiguchi
 

What's hot (20)

スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門スマートフォン向けサービスにおけるサーバサイド設計入門
スマートフォン向けサービスにおけるサーバサイド設計入門
 
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
大規模化するピグライフを支えるインフラ ~MongoDBとChefについて~ (前編)
 
Jvm operation casual talks
Jvm operation casual talksJvm operation casual talks
Jvm operation casual talks
 
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1
 
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
 
nginx入門
nginx入門nginx入門
nginx入門
 
Node.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャーNode.jsでブラウザメッセンジャー
Node.jsでブラウザメッセンジャー
 
Using Windows Azure
Using Windows AzureUsing Windows Azure
Using Windows Azure
 
さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)さいきんの InnoDB Adaptive Flushing (仮)
さいきんの InnoDB Adaptive Flushing (仮)
 
5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing
 
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするGulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くする
 
OpenJDK コミュニティに参加してみよう #jjug
OpenJDK コミュニティに参加してみよう #jjugOpenJDK コミュニティに参加してみよう #jjug
OpenJDK コミュニティに参加してみよう #jjug
 
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないときNode.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
 
Apacheチューニング
ApacheチューニングApacheチューニング
Apacheチューニング
 
Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218
 
KVM+cgroup
KVM+cgroupKVM+cgroup
KVM+cgroup
 
MySQL 初めてのチューニング
MySQL 初めてのチューニングMySQL 初めてのチューニング
MySQL 初めてのチューニング
 
〜Apache Geode 入門 Multi-site(WAN)構成による クラスター連携
〜Apache Geode 入門 Multi-site(WAN)構成によるクラスター連携〜Apache Geode 入門 Multi-site(WAN)構成によるクラスター連携
〜Apache Geode 入門 Multi-site(WAN)構成による クラスター連携
 
PHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったことPHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったこと
 
Handlersocket etc. 20110906
Handlersocket etc. 20110906Handlersocket etc. 20110906
Handlersocket etc. 20110906
 

Viewers also liked

EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させるEWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させるKiyoshi Sawada
 
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いるEWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いるKiyoshi Sawada
 
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) DocumentデータベースのできることEWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) DocumentデータベースのできることKiyoshi Sawada
 
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くEWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くKiyoshi Sawada
 
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかEWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかKiyoshi Sawada
 
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩くEWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩くKiyoshi Sawada
 
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御Kiyoshi Sawada
 
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理Kiyoshi Sawada
 
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖Kiyoshi Sawada
 
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトEWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトKiyoshi Sawada
 
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くEWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くKiyoshi Sawada
 
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証Kiyoshi Sawada
 
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトEWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトKiyoshi Sawada
 
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップEWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップKiyoshi Sawada
 
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答Kiyoshi Sawada
 
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成Kiyoshi Sawada
 
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/WebサービスにアクセスするEWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/WebサービスにアクセスするKiyoshi Sawada
 
EWD 3 トレーニング・コース #1 Node.jsとGT.Mの統合方法
EWD 3トレーニング・コース #1 Node.jsとGT.Mの統合方法EWD 3トレーニング・コース #1 Node.jsとGT.Mの統合方法
EWD 3 トレーニング・コース #1 Node.jsとGT.Mの統合方法Kiyoshi Sawada
 
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみるEWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみるKiyoshi Sawada
 

Viewers also liked (19)

EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させるEWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
EWD 3トレーニング・コース #29 ewd-xpress を Linux systemdでサービスとして稼働させる
 
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いるEWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
EWD 3トレーニングコース#14 ewd-xpressメッセージ用にAjaxを用いる
 
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) DocumentデータベースのできることEWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化 - (f) Documentデータベースのできること
 
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くEWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
 
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかEWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
 
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩くEWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
EWD 3トレーニングコース#23 GlobalストレージのJavaScript用抽象化-(d) ノードの範囲を渡り歩く
 
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
 
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
 
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
 
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトEWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
 
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くEWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
 
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
EWD 3トレーニングコース#10 ewd-xpressのSessionとユーザー認証
 
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトEWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
 
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップEWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
 
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
EWD 3トレーニングコース#9 複雑なewd-xpressメッセージと応答
 
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
EWD 3トレーニングコース#4 ewd-xpressのインストールと構成
 
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/WebサービスにアクセスするEWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
EWD 3トレーニングコース#33 ewd-xpressアプリケーションからREST/Webサービスにアクセスする
 
EWD 3 トレーニング・コース #1 Node.jsとGT.Mの統合方法
EWD 3トレーニング・コース #1 Node.jsとGT.Mの統合方法EWD 3トレーニング・コース #1 Node.jsとGT.Mの統合方法
EWD 3 トレーニング・コース #1 Node.jsとGT.Mの統合方法
 
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみるEWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
EWD 3トレーニングコース#13 全てをひとつにまとめてewd-xpressで稼働させてみる
 

Similar to EWD 3トレーニングコース#2 EWD 3の概要

EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要Kiyoshi Sawada
 
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要EWD 3トレーニング・コース #3 EWD 3 モジュールの概要
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要Kiyoshi Sawada
 
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成Kiyoshi Sawada
 
JavaOne2015報告またはこれからのJava
JavaOne2015報告またはこれからのJavaJavaOne2015報告またはこれからのJava
JavaOne2015報告またはこれからのJavaなおき きしだ
 
Getting started with node.js
Getting started with node.jsGetting started with node.js
Getting started with node.jskouzouman
 
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッションEWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッションKiyoshi Sawada
 
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップEWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップKiyoshi Sawada
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShiftEtsuji Nakai
 
EWD.js アーキテクチャー
EWD.js アーキテクチャーEWD.js アーキテクチャー
EWD.js アーキテクチャーKiyoshi Sawada
 
多分モダンなWebアプリ開発
多分モダンなWebアプリ開発多分モダンなWebアプリ開発
多分モダンなWebアプリ開発tak-nakamura
 
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るEWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るKiyoshi Sawada
 
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るEWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るKiyoshi Sawada
 
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-PE-BANK
 
EWD 3トレーニングコース#1 Node.jsとCacheの連携
EWD 3トレーニングコース#1 Node.jsとCacheの連携EWD 3トレーニングコース#1 Node.jsとCacheの連携
EWD 3トレーニングコース#1 Node.jsとCacheの連携Kiyoshi Sawada
 
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #Eプロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #EShuji Watanabe
 
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...Naoya Ito
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireAkio Katayama
 
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門Kiyoshi Sawada
 

Similar to EWD 3トレーニングコース#2 EWD 3の概要 (20)

EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要EWD 3トレーニングコース#3 EWD 3 モジュールの概要
EWD 3トレーニングコース#3 EWD 3 モジュールの概要
 
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要EWD 3トレーニング・コース #3 EWD 3 モジュールの概要
EWD 3トレーニング・コース #3 EWD 3 モジュールの概要
 
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成
EWD 3トレーニング・コース #4 ewd-xpressのインストールと構成
 
JavaOne2015報告またはこれからのJava
JavaOne2015報告またはこれからのJavaJavaOne2015報告またはこれからのJava
JavaOne2015報告またはこれからのJava
 
Getting started with node.js
Getting started with node.jsGetting started with node.js
Getting started with node.js
 
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッションEWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化 - (h) EWD 3 セッション
 
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップEWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
EWD 3トレーニングコース#5 ewd-xpressアプリ開発第1ステップ
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift
 
EWD.js アーキテクチャー
EWD.js アーキテクチャーEWD.js アーキテクチャー
EWD.js アーキテクチャー
 
多分モダンなWebアプリ開発
多分モダンなWebアプリ開発多分モダンなWebアプリ開発
多分モダンなWebアプリ開発
 
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るEWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
 
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作るEWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
EWD 3トレーニングコース#31 ewd-xpressでWebおよびRESTサービスを作る
 
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
Javaヂカラ #Java最新動向 -Java 11 の新機能やOracle Code One 2018 発の最新技術トレンドを一気にキャッチアップ-
 
EWD 3トレーニングコース#1 Node.jsとCacheの連携
EWD 3トレーニングコース#1 Node.jsとCacheの連携EWD 3トレーニングコース#1 Node.jsとCacheの連携
EWD 3トレーニングコース#1 Node.jsとCacheの連携
 
Node.js Hands-On
Node.js Hands-OnNode.js Hands-On
Node.js Hands-On
 
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #Eプロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
 
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
SmartPhone development guide with CoffeeScript + Node + HTML5 Technology, for...
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
 
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門EWD 3トレーニングコース#17 Globalストレジ・データベース入門
EWD 3トレーニングコース#17 Globalストレジ・データベース入門
 

More from Kiyoshi Sawada

EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化するEWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化するKiyoshi Sawada
 
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させるEWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させるKiyoshi Sawada
 
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合するEWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合するKiyoshi Sawada
 
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッションEWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッションKiyoshi Sawada
 
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理Kiyoshi Sawada
 
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) DocumentデータベースのできることEWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) DocumentデータベースのできることKiyoshi Sawada
 
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くEWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くKiyoshi Sawada
 
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くEWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くKiyoshi Sawada
 
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトEWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトKiyoshi Sawada
 
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトEWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトKiyoshi Sawada
 
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスするEWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスするKiyoshi Sawada
 
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化するEWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化するKiyoshi Sawada
 
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービスEWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービスKiyoshi Sawada
 
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用するEWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用するKiyoshi Sawada
 
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御Kiyoshi Sawada
 
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理Kiyoshi Sawada
 
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖Kiyoshi Sawada
 
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用するEWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用するKiyoshi Sawada
 
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかEWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかKiyoshi Sawada
 

More from Kiyoshi Sawada (19)

EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化するEWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
EWD 3トレーニングコース#30 ewd-xpressアプリケーションをモジュラー化する
 
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させるEWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
EWD 3トレーニングコース#29 ewd-xpressをWindows上のサービスとして稼働させる
 
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合するEWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
EWD 3トレーニングコース#28 従来のMUMPSコードをewd-xpressと統合する
 
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッションEWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
EWD 3トレーニングコース#27 GlobalストレージのJavaScript用抽象化-(h) EWD 3 セッション
 
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
EWD 3トレーニングコース#26 GlobalストレージのJavaScript用抽象化-(g) イベント駆動の索引管理
 
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) DocumentデータベースのできることEWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
EWD 3トレーニングコース#25 GlobalストレージのJavaScript用抽象化-(f) Documentデータベースのできること
 
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩くEWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
EWD 3トレーニングコース#24 GlobalストレージのJavaScript用抽象化-(e) ドキュメントの末端ノードを渡り歩く
 
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩くEWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
EWD 3トレーニングコース#22 GlobalストレージのJavaScript用抽象化-(c) ドキュメントを渡り歩く
 
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクトEWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
EWD 3トレーニングコース#21 GlobalストレージのJavaScript用抽象化-(b) JavaScriptの永続オブジェクト
 
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクトEWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
EWD 3トレーニングコース#20 GlobalストレージのJavaScript用抽象化-(a)DocumentNodeオブジェクト
 
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスするEWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
EWD 3トレーニングコース#19 JavaScriptからGlobalストレジにアクセスする
 
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化するEWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
EWD 3トレーニングコース#18 GlobalストレジでNoSQLデータベースをモデル化する
 
EWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービスEWD 3トレーニングコース#16 ewd-xpressサービス
EWD 3トレーニングコース#16 ewd-xpressサービス
 
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用するEWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
EWD 3トレーニングコース#15 ewd-xpressでjQuery以外のフレームワークを利用する
 
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
EWD 3トレーニングコース#12 ewd-xpressのセッション・タイムアウトの制御
 
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
EWD 3トレーニングコース#11 ewd-xpressでのエラー処理
 
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
EWD 3トレーニングコース#8 ewd-xpressメッセージ・サイクルの解剖
 
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用するEWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
EWD 3トレーニングコース#7 ewd-xpressメッセージ・パターンを適用する
 
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるかEWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
EWD 3トレーニングコース#6 ewd-xpressアプリ開始時に何が起こるか
 

EWD 3トレーニングコース#2 EWD 3の概要