Si supponga di avere multipli db in Redis da inserire e/o rimuovere dati da. Hai un flusso simile;Node e Redis: Clienti Redis
- dati Inserisci per DB # 1
- Dopo callback del primo inserimento fare alcune cose e inserire i dati per DB # 2
- Dopo callback del secondo inserimento fare di nuovo un po 'di roba e infine inserire i dati in DB # 3
Io uso su La variabile denominata redisClient è fondamentalmente creata come;
redisClient = redis.createClient();
E mentre la selezione di un nuovo DB, io uso selezionare comando con l'extra callback pre-cautela, quindi il mio comando di selezione è come;
redisClient.select(1, function(err) {
//Some programming logic (Insertion, deletion and stuff)
redisClient.select(2, function(err) {
//Do some additional programming logic (Insertion, deletion and stuff)
}
});
Tuttavia le cose si mescolano costantemente. Vorrei sottolineare che la variabile redisClient è stata assegnata solo una volta e in seguito su tutta l'intera applicazione. Ora mi chiedevo, quanto sarebbe ragionevole usare redisClients separati per ogni DB che ho in Redis. Quindi sarebbe come;
redisClientForDB1 = redis.createClient();
redisClientForDB2 = redis.createClient();
redisClientForDB3 = redis.createClient();
mi chiedevo sarebbe ragionevole, o sarebbe un modo giusto per un'applicazione che riceverà 4K richieste al secondo e in procinto di passare alla modalità di produzione. Quali problemi questo modello potrebbe affrontare?
Sì! Usare client separati per ogni connessione è la strada da percorrere :) – mekwall