Como resolver o tempo de carregamento muito lento do site?

Levei muito tempo otimizando meu CSS, removendo plugins, removendo redirecionamentos e fazendo tudo o que pude para melhorar os tempos de carregamento, mas aparentemente os principais culpados são:

mobile_4-randomcharacters-.css, que contém o normalize.css e o Pikaday e carrega em 1,5 segundos no mobile
e /assets/ember_jquery-randomcharacter-.js, que carrega em 3,6 segundos no mobile

Não faço ideia do que fazer com esses arquivos, que apresentam os maiores tempos de carregamento.

O carregamento no desktop é mais rápido, mas ainda não é bom.
O servidor tem 1 CPU, 2 GB de RAM, 50 GB de SSD e 2 TB de banda em um servidor profissional baseado nos EUA.
São 2 workers do Unicorn; nem a CPU nem a RAM estão sob carga pesada, e não tenho muitos usuários ou plugins.
Alguma ideia? Obrigado.

Medido usando https://developers.google.com/speed/pagespeed/insights/

Esses são ativos estáticos, e para otimizar a entrega deles, você deve Enable a CDN for your Discourse

Obrigado. https://developers.google.com/speed/pagespeed/insights/ indica que o tempo de CPU (não o tempo de entrega) especificamente para o segundo recurso foi de quase 4 segundos. Um CDN como o Fastly ainda ajudaria nisso? Atualmente, uso o Cloudflare com cache. Devo fazer algum ajuste no Cloudflare ou apenas adicionar algo como o Fastly em cima dele?!

Isso é de fato um grande ativo que levará tempo para ser analisado e avaliado. Como o Discourse é uma “Aplicação de Página Única”, esse custo é pago integralmente no momento em que o usuário chega pela primeira vez, e essa é uma compensação da nossa abordagem, que se concentra em tornar todas as interações subsequentes, típicas do uso de fóruns, leves.

Existem planos para o EmberJS remover a dependência obrigatória do JQuery, o que reduzirá consideravelmente esse payload, mas ainda levaremos anos para fazer essa transição no Discourse.

Obrigado pela resposta. Acredito que algo esteja errado na minha configuração, pois nunca ouvi ninguém relatando esses tempos de carregamento.

Bem, os padrões do PageSpeed forçam um Nexus 5X e uma conexão 3G, o que, mesmo para o Brasil (um país em desenvolvimento), está na faixa baixa para os padrões de hoje, então o desempenho no mundo real dependerá disso.

Olá, acabei de fazer uma instalação fresca do Discourse em um servidor Hetzner, modelo CPX21, com 3 vCPUs e 4 GB de RAM. Usei este guia: discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub

Praticamente não há carga aparecendo nas estatísticas de desempenho do servidor, mas o URL leva uma eternidade para carregar. Registrei 1,2 minutos para um visitante não logado em uma janela anônima, mesmo com vários componentes já em cache. Os mais lentos foram os arquivos de fonte OpenSans TTF, com mais de um minuto; depois, vários componentes .js levaram de 30 a 45 segundos.

Vou investigar opções de cache, mas, analisando esses componentes, não acho que todos sejam passíveis de cache. No total, apenas 730 KB de transferência de dados. Se as 3 vCPUs estivessem operando na capacidade máxima, eu consideraria migrar para um servidor mais rápido, mas como até mesmo isso mostra pouca ou nenhuma carga, estou simplesmente confuso.

Há algo que esteja aguardando outra coisa antes de prosseguir? Existe alguma maneira de executar testes no servidor para verificar a saúde dos componentes, como o banco de dados?
O Docker poderia estar deixando as coisas mais lentas?

Eu também tenho o mesmo problema,
Instalação limpa no Ubuntu com 2 núcleos 4GB de RAM Cloudflare cache e ainda assim o carregamento é super lento.

Minhas configurações em app.yml são padrão, que é db_shared_buffers: "1024MB" UNICORN_WORKERS: 4

Ainda assim o carregamento é lento e isso não é normal. Quais configurações preciso ajustar para corrigir?

Htop ss parece não ser um problema do servidor

Provavelmente vale a pena compartilhar algumas estatísticas do mini-profiler

Talvez também ler
A instalação do Discourse tem ficado cada vez mais lenta
.