Upload
koichik
View
3.578
Download
0
Embed Size (px)
DESCRIPTION
JJUG Cross Community Conference 2011 Spring Node.js 日本ユーザグループによる LT 大会発表資料
Citation preview
node-handlersocketnode-handlersockethttps://github.com/koichik/node-handlersocket
@koichikhttp://d.hatena.ne.jp/koichik/http://d.hatena.ne.jp/koichik/
宣伝
Nodeの本を書いてますNode
@atsuya @bad_at_math @Jxck_ @KOBA789@koichik @masahiroh @meso @nsyee @yssk22
発売は7月かなぁ
著者レビューと初校を並行処理中
少々お疲れ気味 少々お疲れ気味
励ましのツイートを!!
HandlerSocket Plugin
MySQLをNoSQLのようにアクセス可能にMySQL NoSQLしてくれる
詳しくは本日B-3の資料を!
SQLを通さない
SQL Client HandlerSocketClient
ストレージエンジン
MySQL
SQL layer HandlerSocket
HandlerSocketクライアント
libhsclientlibhsclient
C++のクライアントライブラリ
Perl, Ruby, PHP, etc のバインディング
libhsclient
Perl Ruby PHP etc
libhsclient
HandlerSocketMySQL
HandlerSocketクライアント
プロトコルが公開されている
様々なネイティブ実装
Python, PHP, Java, Scala
libhsclient
Perl Ruby PHP etc
Python Java
libhsclient
HandlerSocketMySQL
プロトコル公開
node-handlersocket
Node上で動くJavaScriptによるNode JavaScriptHandlerSocketクライアント
libhsclient
Perl Ruby PHP etc
Python Java
node-handlersocket
JavaScriptlibhsclient
HandlerSocketMySQL
JavaScript
プロトコル公開
node-handlersocketの特徴
Pure JavaScriptPure JavaScript
ノンブロッキングI/O
パイプライニングフルサポート
ブロッキング
クライアント HandlerSocket
execute_single
ブロック
ノンブロッキングnode-
handlersocketHandlerSocket
find
ブロックしない
コールバック
ブロッキング+パイプライニング
クライアント HandlerSocketパイプライニング用のAPI
execute_multi
ブロック
ノンブロッキング+パイプライニング
node-handlersocket
HandlerSocket通常のAPI
findinsert
update
ブロックしない
コールバックコールバックコールバック
ノンブロッキング+パイプライニング
相性がいい
パイプライニング用のAPI不要
単独のAPIを続けて呼び出すだけ
openIndex()もパイプライニング可能
同期?コールバックスパゲッティ?
フロー制御モジュールを使えばおk フロー制御モジュールを使えばおk
slide, step, async, etc... https://github.com/joyent/node/wiki/modules#async-flow
フロー制御モジュール(slide)
var records = [[100, 9999, 'Foo'],[100, 9999, 'Foo'],[300, 9998, 'Bar'],...
];asyncMap(records, function(record, next) {
index.insert(record, next);index.insert(record, next);}, function(err, results) {
//全レコードのインサート完了});
今後の予定
HandlerSocketの新機能対応HandlerSocket
auto_increment
インクリメント/デクリメント
IN
フィルタ
認証 認証
・・・
問題
HandlerSocketがリリースされないHandlerSocket
昨年秋の1.0.6のまま
GitHubにコミットはされてる
樋口さん、リリース!!リリース!!
まとめ
NodeでもHandlerSocket使えるよNode HandlerSocket
https://github.com/koichik/node-handlersocket
ノンブロッキングとパイプライニングは相性がいいよ
好きなフロー制御モジュール使えるよ
いくつかはNode本で紹介してるよ!! いくつかはNode本で紹介してるよ!!
Node本が出たら買ってね!!
謝辞
ご清聴ありがとうございました
一番大事なこと
Node本が出たらNode本が出たら買ってね!!