// cluster-server.js
import cluster from 'node:cluster';
import http from 'node:http';
const os = require('os');

if (cluster.isMaster) {
  const cpus = os.cpus().length;
  for (let i = 0; i < cpus; i++) {
    cluster.fork(); // 启动多个进程
  }
} else {
  http.createServer((req, res) => {
    res.end(`Handled by process ${process.pid}`);
  }).listen(3000);
}
// main.js
import { spawn } from 'node:child_process';

const child = spawn('node', ['child-task.js']);

child.stdout.on('data', (data) => {
  console.log(`Child says: ${data}`);
});

// child-task.js
console.log('Doing heavy work in another process...');