Jobs::PeriodicalUpdates es la causa de alta CPU (más del 100%)

Jobs::PeriodicalUpdates es la causa de alta CPU (más del 100%)

Cuando comprobamos: sidekiq/scheduler/history

Veo que Jobs::PeriodicalUpdates alcanzó los 79 segundos. Esto provoca que la CPU aumente y los usuarios que acceden al sitio web se desconecten.

¿Tiene algún efecto desactivar Jobs::PeriodicalUpdates? ¿Cómo se desactiva?
Además, Jobs::AboutStats; Jobs::DestroyOldDeletionStubs; Jobs::DirectoryRefreshDaily; Jobs::EnsureDbConsistency
también provocan que la CPU supere el 100%

¿Cómo resuelvo estos errores?

¿Cuál es su hardware, RAM, SSD? ¿Qué tamaño tiene su base de datos? ¿Cuántas publicaciones?

Tenemos alrededor de 600k temas.
SSD de 400 GB, CPU de 16 núcleos. En cuanto a la RAM, no veo que esté llena.

Recibo estos errores al reconstruir Discourse (funcionaba bien antes de la reconstrucción).

1 me gusta

Hmm. Eso es extraño. Quizás un error.

Espero que todos ayuden.
¿Alguien puede decirme:

en el Jobs::PeriodicalUpdates . task
¿Qué crees que significa Jobs::PeriodicalUpdates?
¿Es posible deshabilitar Jobs::PeriodicalUpdates?

Creo que esta es la lista de tareas utilizadas por este trabajo: discourse/app/jobs/scheduled/periodical_updates.rb at 1472e47aae5bfdfb6fd9abfe89beb186c751f514 · discourse/discourse · GitHub

No soy un experto para analizar esto, veo dos configuraciones mencionadas

  • automatically download gravatars (descargar avatares automáticamente), no creo que explique un alto uso de CPU
  • rebake_old_posts_count (recocinar publicaciones antiguas), esta ahora está oculta, pero tal vez configuraste muchas publicaciones antiguas para recocinar cada 15 minutos hace meses. Esto explicaría un poco más este uso de CPU.

Entendido, después de 15 minutos, periodicupdates ejecutándose.

Si esta es la causa, ¿cómo puedo desactivar: rebake_old_posts_count?

¿Fue la primera mejora en mucho tiempo? Creo que probablemente estés redimensionando imágenes debido a un cambio de hace tiempo. Funcionará mejor a largo plazo.

mi última actualización fue 2.7.x (no recuerdo el número exacto de x)

espero que alguien pueda ayudarme

No puedes apagarlo. Ha habido cambios que requieren un nuevo horneado. Si tienes suficientes recursos, podrías ajustar las cosas para mejorar el rendimiento.

1 me gusta

:slight_smile: Creo que hay una forma de manejar el error,
es solo que mi nivel de tecnología es limitado.

¿Ejecutaste discourse-setup después de que este servidor tuviera esos recursos? Es posible que no esté aprovechando al máximo tus recursos.

Pero estoy bastante seguro de que los trabajos que está haciendo deben hacerse, por lo que no quieres desactivarlos.

Ahora rebake_old_posts_count está oculto, ¿cómo puedo hacerlo visible? Quiero disminuir el valor.