Uh, det ser ud til, at de opretter en redis-forbindelse for hver klient. Dette kan bestemt ikke anbefales.
Redis er en database. Det er ligesom MySQL. Du kan få adgang til det via en klient, men det er et program, der kører på din server. Dataene håndteres af den, så du behøver ikke bekymre dig om, hvor den er. Hvis du bekymrer dig, kan du se på Redis-konfigurationen. Mere information her:http://redis.io (dokumentet er rigtig godt).
For at "rette" koden og kun bruge én klient, skal du bruge den sådan her:
/**
* Move this at the top, this way it's not run once per client,
* it is run once the node program is launched.
*/
var r = redis.createClient();
var addSnippet = function( req, res ) {
getPostParams( req, function( obj ) {
r.stream.on( 'connect', function() {
r.incr( 'nextid' , function( err, id ) {
r.set( 'snippet:'+id, JSON.stringify( obj ), function() {
var msg = 'The snippet has been saved at <a href="/'+id+'">'+req.headers.host+'/'+id+'</a>';
res.respond( msg );
} );
} );
} );
});
};