Я припускаю, що ви встановили npm правильно, використовуючи один із цих фрагментів (я використав верхній).
Редіс
Я б використовував redis як базу даних. Для одного це дуже швидко , наполегливо. Вам потрібно встановити його, але це дуже просто.
make
Редіс-клі
Далі вам слід пограти з redis самостійно. Я порадив би вам переглянути цей чудовий підручник Саймона Віллісона . Ми з ним також радимо вам просто пограти з цим, redis-cli
щоб відчути базу даних.
Клієнт Redis
Нарешті, вам потрібно встановити клієнт redis. Я б порадив вам використовувати node_redis mranney, оскільки я вважаю, що це найшвидший та найбільш активно розвивається клієнт.
Встановлення
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(),
connect.session({ store: new RedisStore({ maxAge: 300000 }) })
);
Зберігання повідомлень у базі даних
Думаю, для цього я б використав відсортований набір . Зберігайте повідомлення , використовуючи ZADD
і витягувати їх з допомогою ZRANK
, ZRANGEBYSCORE
.
Socket.io
Нарешті, якщо ви намагаєтеся створити простий чат, я порадив би вам заглянути на socket.io.
socket.io прагне зробити програми реального часу можливими у кожному браузері та мобільному пристрої, розмиваючи відмінності між різними транспортними механізмами.
Я також створив чат за допомогою socket.io, який опублікував на stackoverflow . Додавання наполегливості + автентифікації повинно бути легким диханням.