Så varje "användare" bör ha sin egen redis-klient inom anslutningshändelsen. Har jag rätt?
Det är du faktiskt inte :)
Grejen är att node.js är väldigt olik till exempel PHP. node.js skapar inte underordnade processer på nya anslutningar, vilket är en av huvudorsakerna till att den enkelt kan hantera stora mängder samtidiga anslutningar, inklusive långlivade anslutningar (Comet, Websockets, etc.). node.js bearbetar händelser sekventiellt med hjälp av en händelsekö inom en enda process. Om du vill använda flera processer för att dra fördel av flerkärniga servrar eller flera servrar, måste du göra det manuellt (hur man gör det ligger dock utanför den här frågans omfattning).
Därför är det en helt giltig strategi att använda en enda Redis- (eller MySQL)-anslutning för att betjäna en stor mängd klienter. Detta undviker omkostnader för att instansiera och avsluta en databasanslutning för varje klientförfrågan.