Nodejs в памяти - PullRequest
       12

Nodejs в памяти

18 голосов
/ 08 февраля 2010

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

Ответы [ 5 ]

21 голосов
/ 08 февраля 2010

Сервер, который позволяет создать 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/');
4 голосов
/ 02 марта 2010

Если вы хотите больше возможностей, взгляните на redis-node-client

3 голосов
/ 14 марта 2010

Или используйте собственный механизм хранения узлов (записанный в node.js)

http://github.com/felixge/node-dirty

2 голосов
/ 16 декабря 2015
Пакет

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

ссылка npm

0 голосов
/ 11 апреля 2016

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

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...