#!/usr/bin/env node var path = require('path'), cluster = require('cluster'), numCPUs = require('os').cpus().length, compression = require('compression'), express = require('express'), staticFolder = path.resolve(__dirname, '../', 'demo', 'source'), app = express(), port = 7151, message = numCPUs + ' tinyCDN workers at http://0.0.0.0:' + port + '/', ; app.set('port', port); app.use(compression()); app.use('/', express.static(staticFolder)); if (process.argv[2] === 'no-etag') { app.disable('etag'); } if (cluster.isMaster) { while (numCPUs--) cluster.fork(); cluster .on('exit', function (worker) { console.log('Worker ' + worker.id + ' died'); cluster.fork(); }) .once('online', function () { console.log(message); }); } else { app.listen(app.get('port')); }