Quanto de RAM é necessário para o Discourse?

Olá,

Instalei recentemente o Discourse no meu próprio VPS. Tenho apenas 2 GB de RAM. Isso é suficiente para rodar um fórum em produção? Houve momentos em que recebi um erro 502 Gateway, o que talvez seja devido à falta de memória. Às vezes, após instalar um plugin, preciso atualizar meu painel de administração várias vezes.

Outros tópicos afirmam que 1 GB de RAM é suficiente, mas o que é realista? Estou usando a imagem Docker mais recente da Bitnami. Alguns dizem que o Sidekiq pode consumir até 4 GB de RAM: https://github.com/bitnami/bitnami-docker-discourse/issues/150

Você pode facilmente executar o Discourse em um VPS com 2GB de RAM. Se ainda não tiver, talvez queira considerar configurar swap. Executar ./discourse-setup fará isso por você.

Inicialmente configurei a área de swap, mas se eu usar memória de swap, o desempenho cai bastante, então, por padrão, não quis fazer isso.

Nossa configuração padrão deve usar a área de swap apenas sob pressão, como durante atualizações da web.

Se você hospeda uma comunidade grande e começar a experimentar tempos de resposta lentos da API do Discourse, pode aumentar a CPU/RAM do seu servidor e executar novamente ./discourse-setup para que ele comece a utilizar os recursos aumentados.

Esta é uma nova comunidade ou você importou um banco de dados grande? Qual tráfego você espera? A velocidade da CPU de único núcleo, assim como o SSD para armazenamento, são críticos.

Não importei nenhum banco de dados. Este é um fórum novo, com 0 posts. No momento, o único acesso é o meu. No entanto, espero ter tráfego de até 1000 usuários visitando o site por dia.

Ah. Não faça isso. Ou pergunte a eles por que seu desempenho é ruim.

Veja: Instalação Padrão Oficial do Discourse

Curioso saber por que você se opõe ao uso da imagem do Bitnami? (Provavelmente, @AntiMetaman está se referindo aos novos Helm Charts deles aqui.

Mas também, eles lançaram um novo Helm Chart aqui.

Nós, a equipe que desenvolve o Discourse, testamos apenas nossa própria imagem base. Instalações que não seguem Install Discourse in production with the official supported instructions podem apresentar falhas sutis a qualquer momento, e não oferecemos suporte para elas.

Apenas para sua informação e oferecendo uma perspectiva diferente @AntiMetaman

Embora o Discourse possa ser executado em um VPS com pouca RAM, ao compilar e recompilar o Discourse, o processo será bastante lento em comparação com a compilação em uma máquina com mais RAM. Pessoalmente, não executaria uma aplicação Discourse de “verdadeira” produção com apenas 2 GB de RAM, mas isso é apenas minha opinião.

FWIW (apenas minha opinião), já instalei o Discourse em máquinas com 1 GB, 2 GB, 8 GB, 32 GB e 64 GB de RAM, tanto em VPS quanto em servidores dedicados, e, sinceramente, prefiro compilar o Discourse nas minhas máquinas de 64 GB e 32 GB. É tão rápido compilar em 64 GB :). É extremamente rápido recompilar e roda tão bem, liso como manteiga em torrada quente. Portanto, prefiro executar o Discourse em máquinas “maiores” (mais RAM, mais espaço em disco) com outros aplicativos, em vez de rodar em modo standalone em fatias muito pequenas com RAM mínima.

No entanto, isso é baseado na minha experiência pessoal com Discourse e Docker e nas minhas preferências. Gosto que o Discourse recompile rapidamente e tenha bastante “margem de manobra” em produção, e 2 GB não atende aos meus requisitos para velocidade de compilação.

O Discourse recomenda 1 GB como mínimo e eu já executei instalações assim, mas o sistema fica lento rapidamente. Portanto, eu iria de 2 GB.

Esses primeiros 2 GB duram bastante. Atualmente, administro uma comunidade com cerca de 3500 visitas por dia (sem crawlers) e de 20 a 30 posts por dia. Não tenho visto nenhum problema com os 2 GB de RAM e não percebi nenhuma lentidão.

Tenho quase certeza, @AntiMetaman, que seu problema está na imagem do Bitnami e não nos recursos. Certifique-se de que sua CPU é rápida o suficiente e, se possível, atribua uma segunda CPU (eu uso apenas 1 vCPU e funciona bem).

A imagem da Bitnami ainda está usando a versão estável 2.4.4. A única razão pela qual optei pela Bitnami foi porque ela possuía um arquivo docker-compose.yml padrão, o que facilitou o processo de instalação. Algumas pessoas que tentaram atualizar para a versão 2.6.0 beta 1 usando a imagem oficial do Discourse tiveram falhas. Vou tentar a imagem oficial do Discourse e ver como funciona.

Boa ideia, mas pacotes de terceiros, como o instalador Bitnami, não recebem nenhum suporte aqui.

Como você já notou, eles também estão bastante desatualizados.

Olá @Falco - você quer dizer executar esse comando no console ou executar o assistente de configuração é suficiente em www.mysite.com/wizard?

São, na verdade, duas coisas diferentes. :slight_smile:

O /wizard é para configurações de interface e de administrador para configurar seu site após a instalação, e é acessado através do seu site/navegador.

discourse-setup faz parte do próprio processo de instalação que (em parte) aloca recursos do servidor, e é executado a partir do servidor.

Você pode executar discourse-setup várias vezes e ele não sobrescreverá nenhum dado do seu site.

Obrigado pelo esclarecimento @JammyDodger, muito apreciado.

Meu site estava ficando bem lento, então adicionei mais RAM ao servidor, parece que está funcionando muito melhor agora com uma alocação de 2048MB de shared buffers, em vez de 128MB.

Eu estava editando o arquivo app.yml manualmente anteriormente e fazendo o upload via SFTP e acabei de notar um aviso de permissão quando estava reconstruindo o aplicativo agora, a que o arquivo app.yml deve ser definido?

644 ou 600. Acredito que a mensagem a que você se refere informa qual deve ser.

Obrigado @pfaffman!