Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Cluster multi-servidor Node.js:como compartilhar objeto em cluster de vários nós


O Redis é bom porque é independente do seu aplicativo de nó e bastante fácil de dimensionar. Você também pode usá-lo para muitas coisas fora do pub/sub, como compartilhar estruturas de dados básicas (hashes, conjuntos classificados, listas, strings) entre seus servidores de nó para ajudar a mantê-los sincronizados dessa maneira também. Teoricamente, você pode salvar todos os bate-papos em uma determinada sala como um conjunto classificado em que sua chave é uma representação json de algum objeto de bate-papo (algo como {'user':'some_user','msg':'some_msg'} e sua pontuação é o timestamp, então é muito fácil puxar conversas por tempo). O Redis é extremamente rápido e suas estruturas de dados são altamente otimizadas, de modo que um único servidor pode lidar com muitos e muitos usuários.

Temos uma configuração semelhante em produção com um servidor Redis lidando com 1 milhão de usuários (cerca de 10.000 inserções de acessos e 20.000 leituras de um conjunto classificado por minuto), e o uso da CPU raramente fica acima de 5% em uma caixa sem CPU.