GitLab 在 Debian 上运行慢,通常不是单一原因,而是资源、配置、存储、网络几类问题叠加。下面按「最常见 → 较少见」帮你系统梳理原因和排查方向。
GitLab 非常吃内存,官方最低要求:
症状
gitlab-ctl status 有组件频繁重启free -h 看到 swap 被大量使用排查
free -h
top
如果 swap 使用高,基本就是内存不够。
解决
排查
htop
CPU 长期 90%+,说明算力不足。
GitLab 大量读写:
HDD 会非常慢。
建议
iostat -x 1
%util 接近 100% 就是瓶颈。
GitLab 自带 PostgreSQL,默认配置偏保守。
常见问题:
shared_buffers 太小max_connections 太高(反而更慢)排查
gitlab-psql -c "SHOW shared_buffers;"
优化(示例)
postgresql['shared_buffers'] = "2GB"
postgresql['max_connections'] = 200
然后:
gitlab-ctl reconfigure
GitLab 很多操作是异步的:
如果 Sidekiq 卡住,页面会“看起来慢”。
查看
gitlab-rake gitlab:sidekiq:docker # 不常用
gitlab-ctl tail sidekiq
现象
建议
推荐
如果你前面有:
可能导致:
检查
proxy_timeout
keepalive
GitLab 会做反向 DNS 查询。
临时关闭
gitlab_rails['env'] = {
'GITLAB_OMNIBUS_CONFIG' => '...'
}
以下都会明显拖慢:
精简示例
prometheus['enable'] = false
grafana['enable'] = false
registry['enable'] = false
日志量大会拖慢磁盘。
查看
du -sh /var/log/gitlab
free -h
htop
iostat -x 1
df -h
gitlab-ctl status
gitlab-ctl tail
你可以告诉我:
我可以直接给你针对性优化方案。