Estamos considerando migrar nosso software de fórum atual para o Discourse auto-hospedado e estou interessado em algumas evidências anedóticas sobre os possíveis requisitos de recursos.
Nosso fórum está em execução há cerca de 20 anos, contendo 560.000 posts em 37.000 threads. Novos posts são criados a uma taxa de cerca de 200 por dia. Temos 8.500 usuários registrados, dos quais 1.000 estiveram ativos no último ano. O sistema lida com cerca de 1.000 sessões simultâneas anônimas e até 200 conectadas.
Estou procurando relatos de pessoas que executam instalações de tamanho semelhante - você usa o método de instalação padrão (imagem docker grande) ou teve que ajustar a configuração para lidar com a carga? Quanto de CPU e RAM você aloca para o seu sistema? Algo mais que eu deva saber?
Eu começaria com uma configuração de dois contêineres, com os ativos no S3 e uma CDN na frente do site e do bucket S3. Eu começaria com 8 GB ou 16 GB de RAM, talvez dependendo do que você está usando no momento.
Quantas visualizações de página você tem por dia e/ou mês?
Se isso não for suficiente, você pode adicionar um balanceador de carga e mais servidores executando o contêiner da web.
Quanto de CPU e RAM você está usando agora? Qual plataforma?
Por “configuração de dois contêineres”, você quer dizer o que é descrito neste post de como fazer e ativos no S3 seriam descritos em este post? Para minha educação, se usássemos, digamos, CloudFront como nosso CDN e o apontássemos para o S3 para uploads de arquivos, isso tornaria todos os uploads publicamente acessíveis ou existe um mecanismo que possibilita restringir o acesso aos uploads com base nas permissões no Discourse?
Nosso site atual recebe cerca de 200 mil visualizações de página de aproximadamente 30 mil usuários distintos por dia, com mais 200 mil de tráfego de bots e scrapers.
Estamos executando o Woltlab em uma máquina virtual de 8 núcleos/32 GB, mas acredito que há um pouco de superprovisionamento em jogo. Atualmente, a instalação está em um servidor bare metal, mas não estou muito inclinado a manter as coisas dessa forma.
Acho que tenho um site com tráfego semelhante em um droplet de 8 GB que acho que costumava atender cerca de 1 milhão de visualizações de página por mês
Sim, mas há uma opção para o discourse-setup que fará isso na instalação. (Acho que é --two-container, mas eu geralmente olho o script se estiver executando manualmente).
É bom porque você pode construir um contêiner enquanto o antigo está em execução. Você tem que prestar atenção em quando precisa atualizar/reconstruir o contêiner de dados.