25 processos Sidekiq para Gitlab

25 processos Sidekiq para Gitlab

Olhando htopa saída no meu servidor, vejo 25 processos sidekiq gerados pelo Gitlab. Eu uso o Gitlab de forma privada, então nunca haverá carga, então duvido que todos esses processos sejam necessários, mas não consigo ver como configurar seu número.

Existe realmente algum motivo para eu me preocupar com isso em um servidor com recursos restritos?

Responder1

Claro, verifique este tópico aqui:https://github.com/gitlabhq/gitlabhq/issues/2780

Basta editar o sidekiq config.yml, observe a opção de simultaneidade:https://github.com/mperham/sidekiq/blob/master/examples/config.yml

Responder2

Editei os argumentos de inicialização do Sidekiq. No GitLab <7.0.0 está abaixo, scripts/background_jobsmas em> 7.0.0 está abaixobin/background_jobs

Mudar:

function start_sidekiq
{
  bundle exec sidekiq -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e $RAILS_ENV -P $sidekiq_pidfile $@ >> $sidekiq_logfile 2>&1
}

Para:

function start_sidekiq
{
  bundle exec sidekiq -c 10 -q post_receive -q mailer -q system_hook -q project_web_hook -q gitlab_shell -q common -q default -e $RAILS_ENV -P $sidekiq_pidfile $@ >> $sidekiq_logfile 2>&1
}

Observe o -c 10. Mude isso para o que você quiser.

Responder3

Na instalação do Debian da versão 9.3.0 eu tinha /etc/gitlab/gitlab.rblinhas de configuração para o sidekiq.

Mudar

# sidekiq['concurrency'] = 25

para qualquer número que você achar adequado:

sidekiq['concurrency'] = 5

(O motivo pelo qual mudei foi porque os 25 processos padrão consumiam muita memória RAM, fazendo com que o swap fosse usado, tornando o gitlab muito lento. O desempenho melhorou muito para mim após essa mudança)

Responder4

Para mim funcionou apenas ir para /home/git/gitlab/config. Havia um sidekiq.yml.examplearquivo. Acabei de correr:

$ cd /home/git/gitlab/config
$ cp sidekiq.yml.example sidekiq.yml

Usando vim sidekiq.ymlvocê verá que existe uma :concurrency:opção. Defina-o para o número de processos sidekiq desejados, salve o arquivo e execute service gitlab restart.

Isenção de responsabilidade: a localização da pasta de instalação do GitLab pode variar. Para mim foi/home/git/gitlab

informação relacionada