Вопрос

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

Это было полезно?

Решение

Сервер, который 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/');

Другие советы

Если вы хотите, чтобы больше функций посмотрели на Redis-node-client

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

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

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

NPM ссылка

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

  • Ключевое хранилище
  • Необязательное истечение по любым хранимым данным
  • Поддержка схем с использованием json-schema

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

Однако, если вы храните данные, которые должны быть постоянными, вам понадобится такая база данных, как Mongodb (с мангуозом), Mysql, и т. д., а не кэш, как BX или Редис.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top