在部署使用GitLab时发现内存占用过高,导致服务器压力太大.
官方推荐最低物理配置是2核4G,通过修改参数降低内存占用:
1. 减少进程数
修改配置文件/etc/gitlab/gitlab.rb中的worker_processes:
unicorn['work_processes'] = 2
默认是被注释掉的,官方建议该值是CPU核心数加一,可以提高服务器的响应速度,如果内存只有4G,或者服务器上有其它业务,就不要改了,以免内存不足。另外,这个参数最小值是2,设为1,服务器可能会卡死。
2. 减少数据库缓存
postgresql['shared_buffers'] = "256MB"
默认为256MB,可适当改小
3. 减少数据库并发数
postgresql['max_worker_processes'] = 8
默认为8,可适当改小
4. 减少sidekiq并发数
sidekiq['concurrency'] = 25
默认是25,可适当改小
注意:修改完配置以后,需要依次执行下面的命令使配置生效:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
PS:如果设置后内存占用还是比较多,建议创建swap虚拟内存,详情可以看我另一篇创建swap虚拟内存