J'apprends le clustering dans NodeJS
. J'ai deux tâches l'une est node-sass
et une autre est uglifyjs
que je veux exécuter par deux travailleurs différents en utilisant cluster dans nodeJS
. Bien que le code fonctionne fichier et la création du fichier SASS -> CSS
et main.js
au fichier main.min.js
.Exécuter deux tâches dans deux travailleurs différents en utilisant cluster dans nodejs
Mais je ne suis pas sûr si elle est traitée par des travailleurs distincts ou non. Faites-moi savoir où je peux apporter les modifications à faire -
SASS -> CSS
géré par un travailleurUglifyJS
tâche par le second travailleur- Une fois les tâches console complète Master un message réussi
Suite est mon code:
const cluster = require('cluster');
const http = require('http');
const numCPUs = require('os').cpus().length;
var fs = require('fs');
var UglifyJS = require("uglify-js");
var sass = require('node-sass');
if (cluster.isMaster) {
console.log(`Master ${process.pid} is running`);
// Fork workers.
for (let i = 0; i < 2; i++) {
cluster.fork();
}
cluster.on('exit', (worker, code, signal) => {
console.log(`worker ${worker.process.pid} died`);
});
} else {
var result = UglifyJS.minify("js/main.js");
fs.writeFile(__dirname + '/js/main.min.js', result.code, function(err){
if(err)
throw err;
});
sass.render({
file: './css/main.scss',
outFile: 'css',
}, function(err, result) {
if(err)
throw err;
fs.writeFile(__dirname + '/css/main.css', result.css, function(err){
if(err)
throw err;
});
});
console.log(`Worker ${process.pid} started`);
}
vous devriez vérifier [grognement] (https://gruntjs.org). – meyer9
@ meyer9 Je connais le webpack/grunt/gulp way ... c'est une sorte de POC que je fais pour les clusters – Nesh