Полагаю, вы правильно установили npm , используя один из этих фрагментов (я использовал верхний).
Redis
Я бы использовал redis в качестве базы данных.Для одного это действительно быстрый , постоянный.Вам нужно установить его, но это действительно просто.
make
Redis-cli
Далее вы должны поиграть с Redis самостоятельно.Я бы посоветовал вам взглянуть на этот превосходный урок Simon Willison .Он и я также советуем вам просто поиграть с redis-cli
, чтобы почувствовать базу данных.
Клиент Redis
Наконец вам необходимо установить клиент Redis.Я бы посоветовал вам использовать Mranney node_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
.
Socket.io
Наконец, если вы пытаетесь создать простой чат, я бы посоветовал вам иметьвзгляд на socket.io.
socket.io призван сделать приложения реального времени возможными в любом браузере и мобильном устройстве, стирая различия между различными транспортными механизмами.
Я также создал чат с помощью socket.io, который я разместил в stackoverflow .Добавление постоянства + аутентификации должно быть проще простого.