Risoluzione problemi di prestazioni gravi con l'ultima versione di Discourse?

Puoi cliccare sull’icona di MiniProfiler e mostrarci il risultato?

Allego tutte le 7 voci di miniprofiler visualizzate nel menu a discesa.

1 Mi Piace

Per ottenere prestazioni di caricamento iniziali migliori, è necessario HTTPS e HTTP/2. Questi sono preconfigurati di default per ogni nuova installazione seguendo la nostra guida, ma dovrai configurare correttamente il tuo reverse proxy per attivarli.

3 Mi Piace

Sembra che tu abbia una contesa della CPU:

image

Quali processori sono allocati sul server, a quale velocità operano e c’è contesa sul guest o sull’host? È lì che inizierei a guardare. Il tempo per le azioni latest.json nelle prossime due schermate dovrebbe essere molto più rapido.

Inoltre, con gli header delle prestazioni abilitati, potrai vedere le statistiche di prestazione per ogni richiesta negli header della risposta. Ecco un esempio per /latest.json per un sito piccolo:

x-runtime: 0.053864
x-redis-calls: 3
x-redis-time: 0.000615
x-sql-calls: 12
x-sql-time: 0.012697
x-queue-time: 0.001498

Questo potrebbe aiutarti a determinare dove stai perdendo tempo in attesa di SQL/Redis o eseguendo elaborazioni nell’app.

1 Mi Piace

Puoi ottenere un’istantanea dell’attività del container machine in /admin/upgrade#/processes
(tutti i tuoi processi, ordinati per utilizzo di memoria fisica, ma con altre statistiche incluse)

1 Mi Piace

Nota che questo mostrerà solo i processi all’interno del contenitore; siamo interessati all’intera macchina, nonché all’host della VM.

1 Mi Piace

Grazie. Vedi anche l’argomento correlato Deployment ridotto di Discourse, che potrebbe essere considerato un tentativo di aggirare una difficoltà.

Nel primo snapshot di MiniProfiler sopra, vedo che ‘Redirect’ costa 527 ms. Sembra molto.

1 Mi Piace

Vedo che questo è un host interno e che ci stai accedendo tramite IP?

1 Mi Piace

Sì, finora ci sto accedendo tramite IP. L’URL verrà puntato su di esso una volta finalizzato per motivi di prestazioni.

Ho abilitato le intestazioni delle prestazioni. Dove vengono visualizzati questi risultati che hai menzionato? nelle statistiche di MiniProfiler?

Questi header sono presenti nella risposta HTTP per ogni richiesta.