私はexpressを使用してノードアプリケーションを開発しています。クラスタリングについて聞いたところ、アプリのパフォーマンスを向上させる良い方法です。だから私はこの方法を試してみました、ノードjsアプリケーションでクラスタと異なるデータベース接続を作成する必要がありますか?
if(cluster.isMaster){
debug(`Master ${process.pid} is running`);
// Fork works
for (let i =0;i<numCPU;i++){
cluster.fork();
}
cluster.on('exit',(worker,code,signal)=>{
debug(`Worker ${worker.process.pid} died.`);
});
}else{
var app = require('../app');
app.set('port', port);
var server = http.createServer(app);
database.connect(function (err) {
if (err){
debug('Unable to connect MongoDB');
process.exit(1);
}else{
server.listen(port);
}
});
server.on('error', onError);
debug(`Worker ${process.pid} start`);
}
私の質問ですが、私は非常に始まり、使用するデータベースの瞬間にMongoの接続を作成し、使用するクラスタの前に。しかし今、私はクラスタを作成するたびにそれを繰り返します。私は何も役に立たないことを感じますが、私はそれをどのように修正するのか分かりません。データベースを作成するこの方法が間違っている場合、どうすれば修正できますか?または各クラスタに対してデータベース接続を作成する必要がありますか?