其它的负载相关的因素,如平均负载、磁盘使用、内存使用也大为改善。例如,主服务器现在的平均负载几乎不会超过 10,而不像以前它一直徘徊在 20 左右:
CPU Percentage
在业务繁忙期间,我们的次级服务器每秒事务数在 12000 左右(大约为每分钟 740000),而主服务器每秒事务数在 6000 左右(大约每分钟 340000):
Transactions Per Second
可惜的是,在部署 pgbouncer 和我们的数据库负载均衡器之前,我们没有关于事务速率的任何数据。
我们的 PostgreSQL 的最新统计数据的摘要可以在我们的 public Grafana dashboard 上找到。
我们的其中一些 pgbouncer 的设置如下:
< 如显示不全,请左右滑动 >
设置值default_pool_size 100
reserve_pool_size 5
reserve_pool_timeout 3
max_client_conn 2048
pool_mode transaction
server_idle_timeout 30
除了前面所说的这些外,还有一些工作要作,比如: 部署服务发现(#2042), 持续改善如何检查次级服务器是否可用(#2866),和忽略落后于主服务器太多的次级服务器 (#2197)。
值得一提的是,到目前为止,我们还没有任何计划将我们的负载均衡解决方案,独立打包成一个你可以在 GitLab 之外使用的库,相反,我们的重点是为 GitLab EE 提供一个可靠的负载均衡解决方案。
如果你对它感兴趣,并喜欢使用数据库、改善应用程序性能、给 GitLab上增加数据库相关的特性(比如: 服务发现),你一定要去查看一下我们的 招聘职位 和 数据库专家手册 去获取更多信息。
更多GitLab相关教程见以下内容:
Ubuntu 14.04下安装GitLab指南
如何在Ubuntu Server 14.04下安装Gitlab中文版
CentOS源码安装GitLab汉化版
在RHEL6/CentOS6/ScientificLinux6上安装GitLab 6.0.2
GitLab 的详细介绍:请点这里
GitLab 的下载地址:请点这里
via: https://about.gitlab.com/2017/10/02/scaling-the-gitlab-database/