Jobs::PeriodicalUpdates é a causa de CPU alta (acima de 100%)

Jobs::PeriodicalUpdates é a causa de alta utilização da CPU (acima de 100%)

Quando verificamos: sidekiq/scheduler/history

Vejo que Jobs::PeriodicalUpdates atingiu 79 segundos. Causando o aumento da CPU, os usuários que acessam o site ficam fora.

Desligar Jobs::PeriodicalUpdates tem algum efeito? Como desligar?
E, Jobs::AboutStats; Jobs::DestroyOldDeletionStubs; Jobs::DirectoryRefreshDaily; Jobs::EnsureDbConsistency
também causam a CPU a ir para cima de 100%

Como resolvo esses erros?

Qual é o seu hardware, RAM, SSD? Qual o tamanho do seu banco de dados? Quantas postagens?

temos cerca de 600 mil tópicos.
SSD de 400 GB, CPU de 16 núcleos. Quanto à RAM, não vejo o total.

Recebo estes erros ao reconstruir o Discourse (estava tudo bem antes da reconstrução).

1 curtida

Hmm. Isso é estranho. Talvez um bug.

Espero que todos ajudem.
Alguém pode me dizer:

no Jobs::PeriodicalUpdates . task
O que você acha que Jobs::PeriodicalUpdates significa?
É possível desabilitar Jobs::PeriodicalUpdates?

Acho que esta é a lista de tarefas usadas por este job: discourse/app/jobs/scheduled/periodical_updates.rb at 1472e47aae5bfdfb6fd9abfe89beb186c751f514 · discourse/discourse · GitHub

Não sou um especialista para analisar isso, vejo duas configurações mencionadas

  • automatically download gravatars (baixar avatares automaticamente), não acho que explicaria um alto uso de CPU
  • rebake_old_posts_count (contagem de posts antigos para rebater), esta agora está oculta, mas talvez você tenha configurado muitos posts antigos para rebater a cada 15 minutos meses atrás. Isso explicaria um pouco mais esse uso de CPU

Entendi, após 15 minutos, periodicupdates em execução.

Se esta for a causa, como posso desativar: rebake_old_posts_count?

Foi a primeira atualização em muito tempo? Acho que você provavelmente está redimensionando imagens devido a uma mudança há algum tempo. Vai funcionar melhor a longo prazo.

minha última atualização foi 2.7.x (não me lembro do número exato de x)

espero que alguém possa me ajudar

Você não pode desativá-lo. Houve alterações que exigem um novo processamento. Se você tiver recursos suficientes, poderá ajustar as coisas para melhorar o desempenho.

1 curtida

:slight_smile: Acredito que exista uma maneira de lidar com o erro,
É apenas que meu nível de tecnologia é limitado.

Você executou o discourse-setup depois que este servidor teve esses recursos? Ele pode não estar aproveitando ao máximo seus recursos.

Mas tenho certeza de que os trabalhos que ele está fazendo precisam ser feitos, então você não vai querer desativá-los.

Agora rebake_old_posts_count está oculto, como posso torná-lo visível? Quero diminuir o valor.