NextJS NodeJS 多进程

问题描述 投票:0回答:1

我使用 NextJS 进行前端开发,使用 NodeJS 进行后端开发。我想使用子进程。我该如何设置 NodeJS。如何为我的 NextJS 应用程序使用多个进程。谁能给我提供示例代码吗?

javascript reactjs node.js next.js
1个回答
0
投票

我想你正在寻找这个

或者,

https://stackoverflow.com/a/72831318/13086781

这只是我两年前写的示例代码。应该还是可以用的。

const express = require("express");
const next = require("next");
const cluster = require("cluster");
const os = require("os");

const dev = process.env.NODE_ENV !== "production";
const app = next({ dev });
const handle = app.getRequestHandler();

//if the cluster is master
if (cluster.isMaster) {
  for (let i = 0; i < numCpu; i++) {
    cluster.fork();
  }

  //if worker dies or is killed
  cluster.on("exit", (worker, code, signal) => {
    cluster.fork();
  });
} else {
  app
    .prepare()
    .then(() => {
      const server = express();

      server.all("*", (req, res) => {
        return handle(req, res);
      });

      server.listen(port, (err) => {
        if (err) throw err;
        console.log(`> Ready on http://localhost:${port}`, process.pid);
      });

    })
    .catch((ex) => {
      console.error(ex.stack);
      process.exit(1);
    });
  }
© www.soinside.com 2019 - 2024. All rights reserved.