¿Cómo uso los clústeres Node.js con mi aplicación Express simple?

- Construí una aplicación simple que extrae datos (50 elementos) de una base de datos de Redis y los arroja a localhost. Hice un ApacheBench (c = 100, n = 50000) y recibo 150 peticiones / seg semi decentes en un T2080 de doble núcleo a 1.73GHz (mi computadora portátil de 6 años), pero el uso de procedimientos es muy decepcionante, como mostrado:

Solo se usa un núcleo, que es según el diseño en Node, pero creo que casi puedo duplicar mis solicitudes / seg a ~ 300, o incluso más, si puedo usar los clústeres de Node.js. Me moví un poco, pero no he podido averiguar cómo poner elcódigo dado aquí para usar con mi aplicación que se enumera a continuación:

var 
    express = require( 'express' ),
    app     = express.createServer(),
    redis   = require( 'redis' ).createClient();

app.configure( function() {
    app.set( 'view options', { layout: false } );
    app.set( 'view engine', 'jade' );
    app.set( 'views', __dirname + '/views' );
    app.use( express.bodyParser() );
} );

function log( what ) { console.log( what ); }

app.get( '/', function( req, res ) {
    redis.lrange( 'items', 0, 50, function( err, items ) {
            if( err ) { log( err ); } else {
                res.render( 'index', { items: items } );
            }
    });
});

app.listen( 8080 );

También quiero enfatizar que la aplicación es de E / S intensiva (no de CPU intensiva, lo que hubiera hecho algo así comohilos-a-gogo una mejor opción que los clusters).

Me encantaría algo de ayuda para resolver esto.

Respuestas a la pregunta(1)

Su respuesta a la pregunta