statmo / script.js
Zhofang's picture
Update script.js
8220467 verified
raw
history blame contribute delete
898 Bytes
const http = require("http");
const fs = require("fs");
const WebSocket = require("ws");
const cluster = require("cluster");
const os = require("os");
const cpus = os.cpus().length;
const port = 7860;
const index = fs.readFileSync("./index.html");
if (cluster.isMaster) {
console.log(`Number of CPUs is ${cpus}`);
console.log(`Master ${process.pid} is running`);
let requests = 0;
let childs = [];
for (let i = 0; i < cpus; i++) {
let child = cluster.fork();
child.on("message", (msg) => {
requests++;
});
childs.push(child);
}
setInterval(() => {
for (let child of childs) {
child.send(requests);
}
requests = 0;
}, 1000);
} else {
console.log(`Worker ${process.pid} started`);
const handler = function (req, res) {
if (req.url == "/dstat") {
process.send(0);
res.end();
} else {
res.end(index);
}
};