Gitlab 用の 25 個の Sidekiq プロセス

Gitlab 用の 25 個の Sidekiq プロセス

サーバーの出力を見るとhtop、Gitlab によって生成された 25 個の sidekiq プロセスがあります。私は Gitlab を個人的に使用しているため、負荷がかかることはなく、これらのプロセスがすべて必要であるとは思えませんが、その数を構成する方法がわかりません。

リソースが制限されたサーバーでそれについて気にする必要は本当にあるのでしょうか?

答え1

はい、こちらのスレッドを確認してください:github.com/gitlabhq/gitlabhq/issues/2780 より

sidekiq config.yml を編集し、同時実行オプションに注意してください。https://github.com/mperham/sidekiq/blob/master/examples/config.yml

答え2

Sidekiqの起動引数を編集しました。GitLab <7.0.0では以下ですscripts/background_jobsが、>7.0.0では以下です。bin/background_jobs

変化:

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
}

に:

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
}

に注意してください-c 10。これを好きなように変更してください。

答え3

私がインストールした Debian バージョン 9.3.0 には、/etc/gitlab/gitlab.rbsidekiq の設定行がありました。

変化

# sidekiq['concurrency'] = 25

適切と思われる数字に:

sidekiq['concurrency'] = 5

(私が自分で変更した理由は、デフォルトの 25 プロセスが大量の RAM を消費し、スワップが使用されるため、GitLab が非常に遅くなるためです。この変更後、パフォーマンスが大幅に向上しました)

答え4

私の場合は、 に移動するだけでうまくいきました/home/git/gitlab/config。ファイルがありましたsidekiq.yml.example。私は次のように実行しました:

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

を使用すると、オプションvim sidekiq.ymlがあることがわかります:concurrency:。必要な sidekiq プロセスの数に設定し、ファイルを保存して、を実行しますservice gitlab restart

免責事項:GitLabのインストールフォルダの場所は異なる場合があります。私の場合は/home/git/gitlab

関連情報