Ответ 1
Я предполагаю, что вы npm установили правильный способ, используя один из этих фрагменты (я использовал верхний).
Redis
Я бы использовал redis как базу данных. Для одного это действительно быстро, постоянный. Вам нужно установить его, но это очень просто.
make
Redis-кли
Затем вы должны играть с redis самостоятельно. Я бы посоветовал вам взглянуть на этот отличный учебник Саймон Уиллисон. Мы с ним также советуем вам просто играть с 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, который я разместил на fooobar.com/questions/62000/.... Добавление стойкости + аутентификация должно быть легким.