Eu administro uma comunidade muito ativa que tem uma média de 180 mil usuários diariamente e não consigo mais escalar verticalmente. Precisamos escalar horizontalmente. Antes que seja mencionado, não me importo particularmente com o que é “oficialmente suportado”, só me importo com o que é tecnologicamente possível.
Atualmente, temos uma instância do Ubuntu executando o Discourse no Docker com as instruções de instalação oficiais, o armazenamento S3 é usado, bem como uma CDN servindo isso.
Planejo migrar para um NixOS flake que estou escrevendo. Com base em investigações aprofundadas de uso de recursos, notei que a CPU é majoritariamente limitada pelo postgres e pelos workers do Unicorn (nós otimizamos isso para ser o mais leve possível em CPU, mantendo o desempenho. São 16 workers).
MEM também é majoritariamente limitado pelo postgres e redis.
Se possível, quero isolar tudo isso em 3 servidores:
Frontend do Discourse (com unicorn)
Servidor Redis
Servidor Postgres
Já criei com sucesso um servidor Discourse com postgres em outro servidor, mas não tenho certeza se posso mover o redis para outro local e se isso faria sentido em termos de desempenho.
Alguém mais executa o Discourse dessa forma atualmente?