remove clustering -> to much overhead

This commit is contained in:
lucaspalomodevelop 2022-04-09 20:03:47 +02:00
parent 46ad7daf9c
commit 88131afa26

View File

@ -1,56 +1,31 @@
let logger = require("./helper/logger");
let conf = require("./helper/conf")();
const cluster = require("cluster");
let websrv = require("./websrv")(conf);
let jobs = require("./helper/cronjobs");
let open = require("open");
let os = require("os");
const totalCPUs = require("os").cpus().length;
os.setPriority(os.constants.priority.PRIORITY_HIGHEST);
if (cluster.isMaster) {
let jobs = require("./helper/cronjobs");
let open = require("open");
/**
* @description
* Starts the server
*/
websrv.slisten((host, port) => {
console.log("Server started on http://" + host + ":" + port);
open("http://" + host + ":" + port + "/dashboard");
});
console.log(`Number of CPUs is ${totalCPUs}`);
console.log(`Master ${process.pid} is running`);
// Fork workers.
for (let i = 0; i < totalCPUs; i++) {
cluster.fork();
}
console.log(
"Server started on http://" +
conf.webserver.host +
":" +
conf.webserver.port
);
open(
"http://" + conf.webserver.host + ":" + conf.webserver.port + "/dashboard"
);
cluster.on("exit", (worker, code, signal) => {
console.log(`worker ${worker.process.pid} died`);
cluster.fork();
});
process.on("SIGINT", async () => {
console.log("Stopping JSSTE APP Master ...");
logger.DeleteOldLogs();
jobs.Stop();
process.exit();
});
} else {
let websrv = require("./websrv")(conf);
console.log(`Worker ${process.pid} started`);
websrv.slisten((host, port) => {
console.log(`Worker ${process.pid} is listening`);
// console.log("Server started on http://" + host + ":" + port);
// open("http://" + host + ":" + port + "/dashboard");
});
process.on("SIGINT", async () => {
console.log(`Stopping Worker ${process.pid}...`);
websrv.close();
process.exit();
});
}
/**
* @description
* Stops the server
*/
process.on("SIGINT", () => {
logger.DeleteOldLogs();
console.log("Cronjob Beenden ...");
jobs.Stop();
console.log("Web-Server Beenden ...");
websrv.close();
process.exit();
});