私はマルチコアマシン(a.k.aクラスタリング)を利用するnodejsアプリケーションを構築しようとしています。セッションに関する質問があります。私のコードは次のようになります。Nodejsクラスタリングとセッションの表現
var cluster = exports.cluster = require('cluster');
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('exit', function(worker, code, signal) {
console.log('worker ' + worker.process.pid + ' died. Trying to respawn...');
cluster.fork();
});
} else {
//spawn express etc
}
私の質問は次のとおりです。毎回1人のユーザーがランダムなノードインスタンスがヒットし、あるいは、例えば最初の時間は、彼がページを開き、ノードN4をヒットし、彼のセッションが期限切れになるまで、彼は上のノードN4をヒットすべてのリクエスト?私の質問を理解していない人のために、私は心配していることを説明しようとします: ユーザーが自分のページを入力し、ノードN3にログインしてからreq.session.userdataをランダムなデータに設定し、ページと彼はノードN4を押すと、別のノードからreq.session.userdataにアクセスできるようになりますか?これは、ユーザーがランダムにログアウトする可能性があることを意味します。あるいは、私はエクスプレス作業でのクラスタリングの仕組みを理解できません。