node.js + socket.io + redis
以下のHPを参考にやってみた。
http://memocra.blogspot.jp/2012/11/nodejsredissocketio.html
何カ所か、更新しないと上手くいかなかった。
多分、バージョンとかそういう兼ね合いかと思います。
$ npm install socket.io
$ npm install socket.io-redis --save
$ sudo npm install forever
この2つは必須。
んで、ちょっと手直しが必要な部分は、(御免なさい、わかりやすくするために元のソースも貼り付けます。)
// RedisStoreを読み込みます // var RedisStore = require('socket.io/lib/stores/redis'); // redisサーバーの接続先情報を定義します // opts = {host:redis_host, port:redis_port}; // storeをRedisStoreにし、redisPub, redisSub, redisClientをredisサーバーに向けます // io.set('store', new RedisStore({redisPub:opts, redisSub:opts, redisClient:opts})); var redis = require('socket.io-redis'); var io = require('socket.io').listen(server); io.adapter(redis({ host:redis_host, port:redis_port }));
現在、socket.io/lib/stores/redisのディレクトリは見当たりませんね。
多分、モジュールが分離されたんじゃ無いかと思います。
いろいろ検索すると、上記ディレクトリのrequireがありますので。
それと、複数サーバが用意できないので、普通に一つ立ち上げた状態で確認してます。
Expressとの連動
https://gist.github.com/nulltask/89e6f36e194c951697a0
一瞬、おらもおらも!!とか思ったりしたんですが、HTMLとの連動あんまりしてもね・・・。
と、思い直して試してません。
Expressと連動したいって方は、どぞ。