![25 Sidekiq-Prozesse für Gitlab](https://rvso.com/image/617812/25%20Sidekiq-Prozesse%20f%C3%BCr%20Gitlab.png)
Wenn ich mir die Ausgabe auf meinem Server anschaue htop
, sehe ich 25 Sidekiq-Prozesse, die von Gitlab gestartet wurden. Ich verwende Gitlab privat, daher wird es nie eine Belastung geben. Daher bezweifle ich, dass alle diese Prozesse erforderlich sind, aber ich weiß nicht, wie ich ihre Anzahl konfigurieren soll.
Hat es für mich überhaupt einen Sinn, mir darüber auf einem Server mit beschränkten Ressourcen Gedanken zu machen?
Antwort1
Klar, schau dir diesen Thread hier an:https://github.com/gitlabhq/gitlabhq/issues/2780
Bearbeiten Sie einfach die Datei sidekiq config.yml und beachten Sie die Parallelitätsoption:https://github.com/mperham/sidekiq/blob/master/examples/config.yml
Antwort2
Ich habe die Sidekiq-Startargumente bearbeitet. In GitLab <7.0.0 ist es darunter, scripts/background_jobs
aber in >7.0.0 ist es darunterbin/background_jobs
Ändern:
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
}
Zu:
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
}
Beachten Sie das -c 10
. Ändern Sie es nach Belieben.
Antwort3
In der Debian-Installation der Version 9.3.0 hatte ich /etc/gitlab/gitlab.rb
Konfigurationszeilen für Sidekiq.
Ändern
# sidekiq['concurrency'] = 25
auf die Zahl, die Ihnen angemessen erscheint:
sidekiq['concurrency'] = 5
(Der Grund für die Änderung war, dass die standardmäßigen 25 Prozesse sehr viel RAM verbrauchten, wodurch Swap genutzt werden musste, was wiederum Gitlab sehr langsam machte. Nach dieser Änderung hat sich die Leistung für mich deutlich verbessert.)
Antwort4
Bei mir hat es funktioniert, einfach zu zu gehen /home/git/gitlab/config
. Da war eine sidekiq.yml.example
Datei. Ich habe einfach Folgendes ausgeführt:
$ cd /home/git/gitlab/config
$ cp sidekiq.yml.example sidekiq.yml
Wenn Sie verwenden vim sidekiq.yml
, werden Sie sehen, dass es eine :concurrency:
Option gibt. Stellen Sie sie auf die gewünschte Anzahl von Sidekiq-Prozessen ein, speichern Sie die Datei und führen Sie sie aus service gitlab restart
.
Haftungsausschluss: Der Speicherort Ihres GitLab-Installationsordners kann variieren. Für mich war es/home/git/gitlab