Redis や LokiJS (見栄えが良い) のようなものを使用するのではなく、アプリの実行時にメモリ内に大きな JavaScript コレクションを作成し、代わりにクエリを実行することはできますか?
1 に答える
0
socket.io を使用して、この正確なパターンを持つアプリがあります。
以下では、socket.io コードを HTTP リクエストを使用するように変換しました。
サーバーでは、次のようなことができます。
var players = []; //This will be used to store in-memory players.
彼ら、
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.json()); //Need this to populate req.body on requests.
app.all('*', function (req, res, next) {
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
next(); //Need this to accept incoming requests.
});
app.get('/players', function (req, res) {
res.json(players);
});
app.post('/players', function (req, res) {
//validation
players.push(req.body);
});
[...]
この例を見てください: http://agar.io/
これは非常に人気のあるゲームです。では、なぜ彼らはあなたのポジション、スコア、または名前をプレイ中にデータベースに保存するのでしょうか? これには非常にコストがかかります。
于 2015-10-30T12:19:44.080 に答える