![Gitlab 用の 25 個の Sidekiq プロセス](https://rvso.com/image/617812/Gitlab%20%E7%94%A8%E3%81%AE%2025%20%E5%80%8B%E3%81%AE%20Sidekiq%20%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9.png)
サーバーの出力を見ると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.rb
sidekiq の設定行がありました。
変化
# 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