Czy powinienem utworzyć nowego klienta Redis dla każdego połączenia?
Patrzę na ten fragment kodu:
var addSnippet = function( req, res ) {
getPostParams( req, function( obj ) {
var r = redis.createClient();
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 );
} );
} );
} );
});
};
To stąd:http://howtonode.org/node-redis-fun.
Nie do końca rozumiem, co się dzieje. Na przykład pomyślałem, że klient Redis jest pewnego rodzaju interfejsem między bazą danych a programistą, ale teraz wydaje się, że tworzą oni nowego klienta dla każdego przesłanego kodu (aplikacja, którą budują w samouczku, akceptuje fragment kodu) przesyła je i zapisuje w bazie danych)!
Ponadto, gdzie są przechowywane bazy danych Redis? W tym samym katalogu co skrypt? Jak to zmienić?
Używam Redis z Node.js.