リポジトリからパッケージを使用してDebian上でGitlabを実行しています。ほとんどの場合、Gitlabは非常に速く動作していますが、長いアイドル時間が過ぎると、Gitlabは非常に遅くなったり、タイムアウトしたりします(エラー502)。私は遠隔地のgitアクセスでタイムアウトしました(問題を再現できませんでした - 内部APIのタイムアウト)。Gitlabのタイムアウト/初期ページの読み込みが遅い
私のセットアップでは、Debianマシンは別のいくつかのサービスを提供する別のnginxプロキシの後ろにあります。私はgitlab-cliのチェックをして、すべてがうまくいくように見える。私のリバースプロキシのエラーログで
私は唯一の接続タイムアウトを参照してください。
[error] 8643#0: *4139 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.1.1.10, server: gitlab.mydomain.tld, request: "GET/HTTP/1.1", upstream: "http://{SERVER-IP}:80/", host: "gitlab.mydomain.tld"
私は私のunicorn_stderr.logにいくつかのエラーを見ることができます
E, [2016-03-30T19:40:20.183991 #783] ERROR -- : worker=1 PID:16798 timeout (61s > 60s), killing
E, [2016-03-30T19:40:20.194969 #783] ERROR -- : reaped #<Process::Status: pid 16798 SIGKILL (signal 9)> worker=1
I, [2016-03-30T19:40:20.197554 #16871] INFO -- : worker=1 spawned pid=16871
I, [2016-03-30T19:40:20.197909 #16871] INFO -- : worker=1 ready
E, [2016-03-30T20:08:42.911429 #783] ERROR -- : worker=0 PID:16866 timeout (61s > 60s), killing
E, [2016-03-30T20:08:43.191151 #783] ERROR -- : reaped #<Process::Status: pid 16866 SIGKILL (signal 9)> worker=0
I, [2016-03-30T20:08:43.758363 #18728] INFO -- : worker=0 spawned pid=18728
I, [2016-03-30T20:08:44.108244 #18728] INFO -- : worker=0 ready
私はについて少し好奇心とは何ですかgitlabで配信されたnginxのログにエラーがないという事実。
いくつかのより多くのシステム情報:
#sudo gitlab-rake gitlab:env:info
System information
System: Debian 8.3
Current User: git
Using RVM: no
Ruby Version: 2.1.8p440
Gem Version: 2.5.1
Bundler Version:1.10.6
Rake Version: 10.5.0
Sidekiq Version:4.0.1
GitLab information
Version: 8.5.0
Revision: a513e09
Directory: /opt/gitlab/embedded/service/gitlab-rails
DB Adapter: postgresql
URL: http://gitlab.mydomain.tld
HTTP Clone URL: http://gitlab.mydomain.tld/some-group/some-project.git
SSH Clone URL: [email protected]:some-group/some-project.git
Using LDAP: no
Using Omniauth: no
GitLab Shell
Version: 2.6.10
Repositories: /var/opt/gitlab/git-data/repositories
Hooks: /opt/gitlab/embedded/service/gitlab-shell/hooks/
Git: /opt/gitlab/embedded/bin/git
編集:
"外部" リバースプロキシ上の私のnginxの設定は次のようになります:
server {
listen 443;
ssl on;
server_name gitlab.mydomain.tld;
access_log /var/log/nginx/gitlab.mydomain.tld.access.log;
error_log /var/log/nginx/gitlab.mydomain.tld.error.log;
ssl_certificate /etc/nginx/ssl/gitlab.mydomain.tld_unified.crt;
ssl_certificate_key /etc/nginx/ssl/mydomain.tld.key;
location/{
proxy_pass http://gitlab:80;
proxy_redirect default;
proxy_set_header Host $http_host;
proxy_set_header X_FORWARDED_PROTO "https";
satisfy any;
}
}
EDIT2:
I提案された回答を考慮に入れ、またこの情報源とみなした:https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/requirements.md
私は現在、VMに2GBのRAMを割り当て、さらにユニコーン労働者を1人追加しました。
EDIT3:
問題は、より多くのメモリを追加し、3人のユニコーンの労働者を使用することによって解決しているようです。私たちのボックスはGITlabに専用されているものの、
お返事ありがとう、 gitlabマシン自体はそのためだけに作られていますが(ESXiでホストされています)、1GBのRAM(現在私は唯一のユーザーです)にアクセスできます。 1.私はそこに同じ設定を使用しませんが、私はタイムアウトの横に特別な設定を見つけることができませんでした。私は時間切れになってしまったときにリクエストがすでに長くかかることがあります... 2.リクエストの種類は実際には関係ありません。私は長いアイドル時間の後にすべてのサイトになることができます。問題 3. wgetなどを使って、どういう意味があるのかよくわからないのですか? 4.問題はないようです! –
Jan、RAMの量があなたのボトルネックだと思います。 [gitlabの最小要件](https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/requirements.md)に従って、最適なパフォーマンスで実行するには少なくとも2 GB必要です。 –
うわー、私は非常に簡単にこれをテストすることができます、量を増やし、問題がまだ存在するかどうかをチェックします! –