質問

サーバー内のすべてのクライアントに使用するデータを保存するにはどうすればよいですか? (チャットのメッセージのように)

役に立ちましたか?

解決

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リンク

私が書いた BX この目的のために;それはあなたに次のような単純なインメモリキャッシュを与えます:

  • キー価値ストレージ
  • 保存されたデータのオプションの有効期限
  • JSON-Schemaを使用したスキーマのサポート

私はここで自分のリポジトリをプラグインしていますが、それがうまく機能していることを保証できます。 onshape 問題なく1年以上。結局のところ、それは非常にシンプルなツールです。ここで台無しにすることはあまりありません。

ただし、永続的であることを意図したデータを保存している場合は、次のようなデータベースが必要になります。 mongodb(w/ mongoose), mysql, BXまたは Redis.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top