linux – Gitlab:ruby“捆绑”进程的内存消耗极高

前端之家收集整理的这篇文章主要介绍了linux – Gitlab:ruby“捆绑”进程的内存消耗极高前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的 Gitlab安装在小型Ubuntu LTS 16.04上运行时遇到问题.我必须指出,我对Linux或Gitlab没有太多经验.

我的Gitlab安装与一些个人项目(只有4个)运行正常,虽然推动非常缓慢,有时失败.访问Web界面也非常慢.
我检查了服务器,发现使用了高达96%的总内存.罪魁祸首似乎是捆绑过程.

top - 00:15:30 up 59 days,16:17,1 user,load average: 0.00,0.01,0.09
Tasks: 160 total,1 running,159 sleeping,0 stopped,0 zombie
%cpu(s):  0.5 us,0.2 sy,0.0 ni,99.3 id,0.0 wa,0.0 hi,0.0 si,0.0 st
KiB Mem : 72.4/2048272  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||                           ]
KiB Swap:  0.0/0        [                                                                                                    ]

  PID USER      PR  NI    VIRT    RES    SHR S  %cpu %MEM     TIME+ COMMAND
 8760 git       20   0  648908 412768  14700 S   0.7 20.2   0:30.58 bundle
 8799 git       20   0  513748 302632  14300 S   0.0 14.8   0:20.02 bundle
 8833 git       20   0  513748 293028   4696 S   0.0 14.3   0:00.03 bundle
 8839 git       20   0  513748 292904   4572 S   0.0 14.3   0:00.02 bundle
 8836 git       20   0  513748 292840   4508 S   0.3 14.3   0:00.04 bundle
11792 MysqL     20   0 1567168 158296      0 S   0.0  7.7   5:01.31 MysqLd
32688 root      20   0 11.279g  99476   1164 S   0.0  4.9   1:21.06 dotnet
 8092 gitlab-+  20   0  576816  39616  39020 S   0.0  1.9   0:00.10 postgres
 8854 gitlab-+  20   0  595572  15004  10524 S   0.0  0.7   0:00.09 postgres
 8075 git       20   0  128348  14896   7680 S   0.0  0.7   0:00.07 gitlab-workhors
 8830 gitlab-+  20   0  592816  12196   9780 S   0.0  0.6   0:00.04 postgres
 9534 gitlab-+  20   0  592824  12060   9668 S   0.0  0.6   0:00.01 postgres
 8781 gitlab-+  20   0  592816  11932   9616 S   0.0  0.6   0:00.02 postgres
32684 root      20   0   61856  11420      0 S   0.0  0.6  23:35.39 supervisord
 8100 gitlab-+  20   0   37552  11112   2868 S   0.3  0.5   0:03.74 redis-server
 8094 gitlab-+  20   0  577068   7944   7324 S   0.0  0.4   0:00.01 postgres
 8087 gitlab-+  20   0   46756   7932   2900 S   0.0  0.4   0:00.01 Nginx
 8095 gitlab-+  20   0  577068   7052   6444 S   0.0  0.3   0:00.06 postgres
 8088 gitlab-+  20   0   46412   6752   1992 S   0.0  0.3   0:00.10 Nginx
  975 root      20   0   38236   6368   1908 S   0.0  0.3   8:47.56 systemd-journal
 8097 gitlab-+  20   0  578076   5600   4240 S   0.0  0.3   0:00.05 postgres
 8086 root      20   0   42240   5524   4696 S   0.0  0.3   0:00.00 Nginx
  974 root      20   0   12204   4720     60 S   0.0  0.2   2:33.12 haveged
    1 root      20   0  185260   4308   2408 S   0.0  0.2   3:23.22 systemd
 7757 root      20   0   25224   4256   2484 S   0.0  0.2   0:00.28 bash
 9857 root      20   0   42468   3708   3076 R   0.0  0.2   0:00.09 top
 8098 gitlab-+  20   0   26956   3296   2608 S   0.0  0.2   0:00.08 postgres
 8089 gitlab-+  20   0   42424   3260   2224 S   0.0  0.2   0:00.01 Nginx
 8784 git       20   0   18100   2980   2664 S   0.0  0.1   0:00.38 gitlab-unicorn-
 8096 gitlab-+  20   0  577068   2932   2332 S   0.0  0.1   0:00.03 postgres

我已经点击了pstree,这些捆绑进程似乎与ruby应用程序有关(必须是gitlab).

systemd─┬─agetty
        ├─atd
        ├─bundle─┬─3*[bundle───{ruby-timer-thr}]
        │        └─{ruby-timer-thr}
...

有没有人有类似的经历或想法可能导致这种情况?

解决方法

GitLab CE希望使用至少4GB的RAM.因此,如果您有2GB内存,GitLab会尝试使用SWAP添加另外2GB的内存,从而产生2GB的内存.这使得GitLab非常慢,即使你是唯一的用户.

解决方案:您的计算机必须至少具有4 GB RAM或更多.不要浪费你的时间来调整GitLab的配置文件,只要确保你有4 GB的硬盘.

阅读本GitLab文档的“内存”部分:
https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/requirements.md

祝好运!

猜你在找的Linux相关文章