LearnBoost / cluster

Node.JS multi-core server manager with plugins support.
http://learnboost.github.com/cluster
MIT License
2.29k stars 159 forks source link

Using ES6 imports #194

Open pito-svk opened 8 years ago

pito-svk commented 8 years ago

I got an error, when I use import instead of require.

When I use:

const cluster = require('cluster');

everything works,

Starting master, pid 5174, spawning 4 workers Server running at http://localhost:4545 Worker 3 started Server running at http://localhost:4545 Worker 2 started Server running at http://localhost:4545 Worker 4 started Server running at http://localhost:4545 Worker 1 started

but when I use

import * as cluster from 'cluster';

I got

crop

I run cluster with this code:

`if (cluster.isMaster) { var numCpus = require('os').cpus().length;

console.log('Starting master, pid ' + process.pid + ', spawning ' + numCpus + ' workers');

for (var i = 0; i < numCpus; i++) {
    cluster.fork();
}

cluster.on('listening', function(worker) {
    console.log('Worker ' + worker.id + ' started');
});

cluster.on('death', function(worker) {
    console.log('Worker ' + worker.id + ' died, restarting...');
    cluster.fork();
});

} else { server.listen( port, () => console.log('Server running at http://localhost:' + port) ) }`

yindia commented 7 years ago

I am also facing same issue

yindia commented 7 years ago

index.js

require('babel-core/register')({
  presets: ['node6']
});

const app = require('./test.js');
app();``

test.js

import cluster from 'cluster'
module.exports = function() {
if (cluster.isMaster) {
    for(let i = 0; i < 2; ++i) {
        cluster.fork();
    }
    cluster.on('exit', (worker) => console.log('Worker ' + worker.process.pid + ' exitted.'));
} else {

    console.log('Worker ' + cluster.worker.process.pid);
    process.exit(0);
}
}

Run : sudo babel-node --presets node6 index.js