Uma configuração que utilizo é ter vários contêineres do Discourse rodando atrás de um proxy reverso em um único servidor. Por um tempo, usei
DISCOURSE_REDIS_DB: x
para permitir que vários servidores Discourse usassem um único servidor Redis. Principalmente porque sou preguiçoso e não gosto de manter um controle cuidadoso de qual servidor está usando qual número, eu queria aumentar o número de bancos de dados Redis no Redis para mais de 16. Quando perguntei sobre isso, a resposta que recebi sugeriu que é uma péssima ideia usar redis_db para ter múltiplos sites em um único Redis. E desde então reconfigurei as coisas para iniciar um Redis separado para cada site (o que os torna mais fáceis de acompanhar, pois posso usar um nome para eles).
Mas isso parece um pouco bobo. E agora que estou olhando, vejo isto:
Então, eu estava me perguntando se tudo bem usar redis_db ou se cada Discourse precisa do seu próprio Redis.
Cada Discourse precisa de seu próprio servidor Redis totalmente separado porque o message-bus usa Redis Pub/Sub, que é compartilhado entre todos os bancos de dados em um servidor Redis.
Se você executar o Discourse em uma configuração multissite, adicionaremos automaticamente um prefixo específico do site a todas as chaves e canais de pub/sub. Esse mesmo prefixo não está disponível para instalações padrão de ‘site único’.
Parece ser uma falha arquitetônica grave. Você poderia, por favor, tornar o prefixo de chaves do Redis possível em uma instalação de site único para que possamos ter várias instalações do Discourse em um único host Redis? A menos que eu esteja entendendo algo errado, esta é uma solução muito simples que reduziria muito a complexidade e a sobrecarga para pessoas que precisam executar mais de um Discourse.