Jobs::PeriodicalUpdates est la cause d'une utilisation CPU élevée (plus de 100%)

Jobs::PeriodicalUpdates est la cause d’une utilisation élevée du CPU (plus de 100 %)

Lorsque nous vérifions : sidekiq/scheduler/history

Je vois que Jobs::PeriodicalUpdates a atteint 79 secondes. Cela provoque une augmentation du CPU, les utilisateurs accédant au site web sont exclus.

Désactiver Jobs::PeriodicalUpdates a-t-il un effet ? Comment le désactiver ?
Et, Jobs::AboutStats ; Jobs::DestroyOldDeletionStubs ; Jobs::DirectoryRefreshDaily ; Jobs::EnsureDbConsistency
provoquent également une augmentation du CPU au-dessus de 100 %.

Comment résoudre ces erreurs ?

Quel est votre matériel, votre RAM, votre SSD ? Quelle est la taille de votre base de données ? Combien de publications ?

nous avons environ 600 000 sujets.
SSD de 400 Go, CPU 16 cœurs. Pour la RAM, je ne vois pas de problème.

Je reçois ces erreurs lors de la reconstruction de Discourse (cela fonctionnait bien avant la reconstruction).

1 « J'aime »

Hmm. C’est étrange. Peut-être un bug.

J’espère que tout le monde aidera.
Quelqu’un peut-il me dire :

dans le Jobs::PeriodicalUpdates . task
Que pensez-vous que Jobs::PeriodicalUpdates signifie ?
Est-il possible de désactiver Jobs::PeriodicalUpdates ?

Je pense que c’est la liste des tâches utilisées par ce travail : discourse/app/jobs/scheduled/periodical_updates.rb at 1472e47aae5bfdfb6fd9abfe89beb186c751f514 · discourse/discourse · GitHub

Je ne suis pas un expert pour analyser cela, je vois deux paramètres mentionnés :

  • automatically download gravatars (télécharger automatiquement les gravatars), je ne pense pas que cela expliquerait une utilisation élevée du CPU
  • rebake_old_posts_count (nombre de vieilles publications à ré-encoder), celui-ci est maintenant masqué, mais peut-être avez-vous configuré un grand nombre de vieilles publications à ré-encoder toutes les 15 minutes il y a des mois. Cela expliquerait un peu plus cette utilisation du CPU.

Je vois, après 15 minutes, periodicupdates en cours d’exécution.

Si c’est la cause, comment puis-je désactiver : rebake_old_posts_count ?

S’agissait-il de la première mise à niveau depuis longtemps ? Je pense que vous redimensionnez probablement les images en raison d’un changement il y a quelque temps. Cela fonctionnera mieux à long terme.

Ma dernière mise à niveau était 2.7.x (je ne me souviens pas du numéro exact de x)

J’espère que quelqu’un pourra m’aider.

Vous ne pouvez pas l’éteindre. Des changements ont nécessité un nouveau “rebake”. Si vous avez suffisamment de ressources, vous pourrez peut-être ajuster les choses pour améliorer les performances.

1 « J'aime »

:slight_smile: Je crois qu’il existe un moyen de gérer l’erreur,
c’est juste que mon niveau technologique est limité.

Avez-vous exécuté discourse-setup après que ce serveur ait eu ces ressources ? Il n’en utilise peut-être pas le maximum.

Mais je suis à peu près certain que les tâches qu’il effectue doivent être faites, donc vous ne voulez pas les désactiver.

Maintenant, rebake_old_posts_count est masqué, comment puis-je le rendre visible ? Je veux diminuer la valeur.