2011-09-26 16 views
7

In Node.js, sarebbe meglio creare un createClient() per ogni singola richiesta o utente HTTP, o sarebbe meglio riutilizzare lo stesso client per tutte le richieste? Hai ancora la velocità di molti client paralleli con una sola?Node.js: Quanti client Redis?

risposta

7

In Node.js, sarebbe meglio fare un createClient() per ogni richiesta HTTP individuo o un utente, o sarebbe meglio riutilizzare lo stesso client per tutte le richieste?

Si dovrebbe riutilizzare la connessione client Redis e persistono durante tutta la durata del programma in quanto stabilisce una nuova connessione ha un certo overhead iniziale che può essere evitato con il cliente già collegato.

Hai ancora la velocità di diversi client paralleli con uno solo?

Si potrebbe ottenere alcuni miglioramenti di prestazioni con un pool di diversi clienti parallele (numero limitato, non connessione dedicata per ogni richiesta HTTP singola o utente), ma la domanda è come si dovrebbe affrontare la concorrenza dei comandi eseguiti. Sebbene redis sia progettato per gestire centinaia o migliaia di client connessi simultaneamente, il pool di connessioni è qualcosa che, penso, dovrebbe essere controllato dalla libreria client che si sta utilizzando. Comunque dovresti usare due connessioni parallele se stai usando simultaneamente i redis per l'ascolto su qualche pub/sub canale e allo stesso tempo eseguendo normali comandi.

Problemi correlati