Накопитель Nodejs в памяти

Как мне хранить данные, которые будут использоваться для всех клиентов на моем сервере? (как сообщения чата)

Ответы

Ответ 1

Сервер, который node.js позволяет вам создавать, является сервером приложений, что означает, что состояние сохраняется между запросом на стороне сервера. Следующий фрагмент демонстрирует это:

var sys  = require('sys'),
    http = require('http');

var number = 0;

http.createServer(function (req, res) {
        console.log(req.method, req.url);

        res.writeHead(200, {'Content-Type': 'text/html'});
        res.write('<h1>Number is: ' + number + '</h1>');
        res.end();

        number++;

}).listen(8000);

sys.puts('Server running at http://127.0.0.1:8000/');

Ответ 2

Если вы хотите, чтобы другие функции смотрели на redis-node-client

Ответ 4

Пакет

node -cache в настоящее время лучше всего подходит для хранения значений ключей, а также позволяет синхронно, асинхронно хранить/извлекать/удалять ключи.

ссылка npm

Ответ 5

Я написал Bx для этой цели; он дает вам простой кеш в памяти:

  • Хранилище с ключом
  • Дополнительное завершение любых сохраненных данных
  • Поддержка схем с использованием JSON-схемы

Хотя я подключаю свой собственный репозиторий здесь, я могу заверить, что он работает хорошо, и он использовался в производстве в моей собственной компании, Onshape более года без проблем. В конце концов это довольно простой инструмент; не так много здесь.

Однако, если вы сохраняете данные, которые должны быть постоянными, вам понадобится база данных, такая как MongoDB (w/Mongoose), MySQL и т.д., а не кеш, такой как Bx или Redis.