Jobs::PeriodicalUpdates è la causa dell'alto utilizzo della CPU (oltre il 100%)

Jobs::PeriodicalUpdates è la causa dell’elevato utilizzo della CPU (oltre il 100%)

Quando controlliamo: sidekiq/scheduler/history

Vedo che Jobs::PeriodicalUpdates ha raggiunto 79 secondi. Ciò causa l’aumento della CPU, gli utenti che accedono al sito web sono esclusi.

Spegnere Jobs::PeriodicalUpdates ha qualche effetto? Come si spegne?
Inoltre, Jobs::AboutStats; Jobs::DestroyOldDeletionStubs; Jobs::DirectoryRefreshDaily; Jobs::EnsureDbConsistency causano anch’essi un aumento della CPU oltre il 100%

Come risolvo questi errori?

Qual è il tuo hardware, RAM, SSD? Quanto è grande il tuo database? Quanti post?

Abbiamo circa 600.000 argomenti.
SSD da 400 GB, CPU a 16 core. Per quanto riguarda la RAM, non vedo il pieno.

Ricevo questi errori quando ricostruisco discourse (andava bene prima della ricostruzione).

1 Mi Piace

Hmm. È strano. Forse un bug.

Spero che tutti aiutino.
Qualcuno può dirmi:

nel task Jobs::PeriodicalUpdates
Cosa pensi che significhi Jobs::PeriodicalUpdates?
È possibile disabilitare Jobs::PeriodicalUpdates?

Penso che questo sia l’elenco delle attività utilizzate da questo job: discourse/app/jobs/scheduled/periodical_updates.rb at 1472e47aae5bfdfb6fd9abfe89beb186c751f514 · discourse/discourse · GitHub

Non sono un esperto per analizzare questo, vedo due impostazioni menzionate

  • automatically download gravatars, non credo che spiegherebbe un alto utilizzo della CPU
  • rebake_old_posts_count questo ora è nascosto, ma forse hai impostato molti vecchi post da rebakare ogni 15 minuti mesi fa. Spiegherebbe un po’ di più questo utilizzo della CPU

Capisco, dopo 15 minuti, periodicupdates in esecuzione.

Se questa è la causa, come posso disattivare: rebake_old_posts_count?

È stato il primo aggiornamento dopo molto tempo? Penso che probabilmente stai ridimensionando le immagini a causa di un cambiamento avvenuto tempo fa. Funzionerà meglio a lungo termine.

il mio ultimo aggiornamento, era 2.7.x (non ricordo il numero esatto di x)

spero che qualcuno possa aiutarmi

Non puoi spegnerlo. Ci sono state modifiche che richiedono una nuova cottura. Se hai abbastanza risorse, potresti essere in grado di regolare le cose per migliorare le prestazioni.

1 Mi Piace

:slight_smile: Credo che ci sia un modo per gestire l’errore,
è solo che il mio livello tecnologico è limitato.

Hai eseguito discourse-setup dopo che questo server ha avuto quelle risorse? Potrebbe non sfruttare al meglio le tue risorse.

Ma sono abbastanza sicuro che i processi che sta eseguendo debbano essere eseguiti, quindi non vuoi disattivarli.

Ora rebake_old_posts_count è nascosto, come posso renderlo visibile? Voglio diminuire il valore.