Zakładam, że zainstalowałeś npm we właściwy sposób, używając jednego z tych fragmentów (użyłem górnego).
Redis
Użyłbym redis jako bazy danych. Po pierwsze, jest naprawdę szybki , wytrwały. Musisz go zainstalować, ale to naprawdę proste.
make
Redis-cli
Następnie powinieneś sam pobawić się z redisem. Radziłbym zapoznać się z tym doskonałym tutorialem autorstwa Simona Willisona . On i ja również radzimy po prostu bawić redis-cli
się programem, aby poczuć bazę danych.
Klient Redis
Na koniec musisz zainstalować klienta redis. Radziłbym skorzystać z node_redis firmy Mranney, ponieważ uważam, że jest to najszybszy i najbardziej aktywnie rozwijany klient.
Instalacja
npm install hiredis redis
Prosty przykład, zawarty jako 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();
});
Przechowywanie sesji w bazie danych
Również autor express stworzył bibliotekę do obsługi twoich sesji za pomocą redis.
Instalacja:
npm install connect-redis
Przykład:
var connect = require('connect')
, RedisStore = require('connect-redis');
connect.createServer(
connect.cookieDecoder(),
connect.session({ store: new RedisStore({ maxAge: 300000 }) })
);
Przechowywanie wiadomości w bazie danych
Myślę, że użyłbym do tego posortowanego zestawu . Przechowywania wiadomości użyciu ZADD
i pobierać je za pomocą ZRANK
, ZRANGEBYSCORE
.
Socket.io
Na koniec, jeśli próbujesz stworzyć prosty czat, radzę zajrzeć na socket.io.
socket.io ma na celu udostępnienie aplikacji czasu rzeczywistego w każdej przeglądarce i na każdym urządzeniu mobilnym, zacierając różnice między różnymi mechanizmami transportu.
Stworzyłem również czat przy użyciu socket.io, który opublikowałem na stackoverflow . Dodanie trwałości i uwierzytelniania powinno być proste.