私はNode.jsの初心者ですが、試してみるのが楽しみです。急行ウェブフレームワークとして、そしてジェイドテンプレートエンジンとして。どちらもセットアップは簡単でした。このチュートリアルからノードキャンプ。
しかし、私が見つけた一つの問題はDBをセットアップするための簡単なチュートリアルが見つからない基本的なチャット アプリケーション (セッションとメッセージの保存) を構築しようとしています。
誰か良いチュートリアルを知っていますか?
この他のSO投稿使用する DB について説明していますが、これは私がこれまで使用してきた Django/MySQL の世界とは大きく異なるため、何が起こっているのか理解しておきたいと思います。
ありがとう!
ベストアンサー1
あなたは持っていると思いますネプこれらのいずれかを使用して正しい方法でインストールします切れ端(私は一番上のものを使いました)。
レディス
私はデータベースとしてRedisを使用します。まず、それは本当に速い、永続的です。インストールする必要がありますが、それは本当に簡単です。
make
Redis コマンドライン
次に、Redisを自分で操作してみましょう。この優れたチュートリアルをご覧になることをお勧めします。サイモン・ウィリソン彼と私は、redis-cli
データベースの感触をつかむために、実際に操作してみることを勧めています。
Redis クライアント
最後に、Redisクライアントをインストールする必要があります。mranneyのノード_redisなぜなら、これが最も高速かつ最も積極的に開発されているクライアントだと思うからです。
インストール
npm install hiredis redis
簡単な例 (example.js として含まれています):
var redis = require("redis"),
client = redis.createClient();
client.on("error", function (err) {
console.log("Error " + err);
});
client.set("string key", "string val", redis.print);
client.hset("hash key", "hashtest 1", "some value", redis.print);
client.hset(["hash key", "hashtest 2", "some other value"], redis.print);
client.hkeys("hash key", function (err, replies) {
console.log(replies.length + " replies:");
replies.forEach(function (reply, i) {
console.log(" " + i + ": " + reply);
});
client.quit();
});
セッションをデータベースに保存する
また、Expressの作者は、あなたのセッションRedis を使用します。
インストール:
npm install connect-redis
例:
var connect = require('connect')
, RedisStore = require('connect-redis');
connect.createServer(
connect.cookieDecoder(),
// 5 minutes
connect.session({ store: new RedisStore({ maxAge: 300000 }) })
);
データベースにメッセージを保存する
私はソートされたセットこのためには、 を使用してメッセージを保存しZADD
、 を使用してメッセージを取得しますZRANK
。ZRANGEBYSCORE
ソケット.io
最後に、シンプルなチャットを作成しようとしている場合は、socket.io を参照することをお勧めします。
socket.io は、さまざまなトランスポート メカニズムの違いを曖昧にして、あらゆるブラウザーとモバイル デバイスでリアルタイム アプリを可能にすることを目指しています。
私はsocket.ioを使ってチャットも作成し、投稿しました。スタックオーバーフロー永続性と認証の追加は簡単です。