Node.js 在一台4核机器上群集一个MERN应用程序

Node.js 在一台4核机器上群集一个MERN应用程序,node.js,mern,Node.js,Mern,我正在尝试将一个MERN应用程序集群到一个4核服务器中,在声明集群和numpus后,我被卡住了。我应该如何使用MERN应用程序?非常感谢您的帮助。再次感谢 const express = require("express"); const app = express(); const morgan = require('morgan'); const bodyParser = require("body-parser"); const cors = re

我正在尝试将一个MERN应用程序集群到一个4核服务器中,在声明集群和numpus后,我被卡住了。我应该如何使用MERN应用程序?非常感谢您的帮助。再次感谢

const express = require("express");
const app = express();
const morgan = require('morgan');
const bodyParser = require("body-parser");
const cors =  require("cors");
const dotenv = require('dotenv');
const connectDB = require("./dbconfig/dbconfig");
const cookieParser = require('cookie-parser');
const path = require('path');
const productRoute = require('./routes/products')
dotenv.config()
connectDB()
const cluster = require('cluster')
const numCPUs = require('os').cpus().length

    const port = process.env.PORT || 5000    

    var whitelist = ['http://localhost:3000', 'http://localhost:5000'];
    app.use(cors({credentials: true, origin: whitelist }));    

    app.use(cookieParser())
    app.use(morgan('dev'))    

    app.use(bodyParser.json({limit: '50mb'}))
    app.use(bodyParser.urlencoded({extended:false}))

    app.use('/api', productRoute)    

    app.use(express.static(path.join("frontend" ,"build")))    

    app.get("*",(req,res) => {
            res.sendFile(path.resolve(__dirname, "frontend","build","index.html"))
        })

    app.listen(port,() => {
        console.log(`Listening to part ${port}...`)
})

你可以这样做

const express = require("express");
const app = express();
const morgan = require('morgan');
const bodyParser = require("body-parser");
const cors =  require("cors");
const dotenv = require('dotenv');
const connectDB = require("./dbconfig/dbconfig");
const cookieParser = require('cookie-parser');
const path = require('path');
const productRoute = require('./routes/products')
dotenv.config()
connectDB()
const cluster = require('cluster')
const numCPUs = require('os').cpus().length;
const port = process.env.PORT || 5000   

var whitelist = ['http://localhost:3000', 'http://localhost:5000'];
    app.use(cors({credentials: true, origin: whitelist }));    

    app.use(cookieParser())
    app.use(morgan('dev'))    

    app.use(bodyParser.json({limit: '50mb'}))
    app.use(bodyParser.urlencoded({extended:false}))

    app.use('/api', productRoute)    

    app.use(express.static(path.join("frontend" ,"build")))    

    app.get("*",(req,res) => {
            res.sendFile(path.resolve(__dirname, "frontend","build","index.html"))
        })

if (cluster.isMaster) {
    for (var i = 0; i < numCPUs; i++) {
        // Create a worker
        cluster.fork();
    }
} else {
    // Workers share the TCP connection in this server
    // All workers use this port
    app.listen(8080);
}

const express=require(“express”);
常量app=express();
const morgan=要求(“摩根”);
const bodyParser=require(“body parser”);
const cors=要求(“cors”);
const dotenv=require('dotenv');
const connectDB=require(“./dbconfig/dbconfig”);
const cookieParser=require('cookie-parser');
const path=require('path');
const productRoute=require(“./routes/products”)
dotenv.config()
connectDB()
const cluster=require('cluster')
const numpus=require('os').cpus().length;
const port=process.env.port | 5000
var白名单=['http://localhost:3000', 'http://localhost:5000'];
app.use(cors({credentials:true,origin:whitelist}));
app.use(cookieParser())
应用程序使用(摩根(‘开发’))
use(bodyParser.json({limit:'50mb'}))
use(bodyParser.urlencoded({extended:false}))
应用程序使用('/api',productRoute)
app.use(express.static(path.join(“前端”、“构建”))
应用程序获取(“*”,(请求,请求)=>{
res.sendFile(path.resolve(uu dirname,“frontend”,“build”,“index.html”))
})
if(cluster.isMaster){
对于(变量i=0;i
如果工作进程已关闭,还可以添加错误处理。有关更多详细信息,请查看