Gitaly是一个Git RPC服务,用于处理GitLab发出的所有git调用。目前Gitaly仍在发展。 我们期望它成为一个标准组件,并在2017年第三季度达到全覆盖。
**项目目标:**
制作大型GitLab实例的git数据存储层,特别是GitLab.com,速度快。
**这将通过关注两个领域(按此顺序)来实现:**
允许高效缓存
GitLab的Git数据层的弹性水平缩放
**由来:**
对于GitLab.com git访问很慢。
当查看Rugged :: Repository.new性能数据时,我们可以看到我们的P99峰值高达30壁秒,而CPU时间保持在15毫秒的范围内。 指向文件系统访问是罪魁祸首。
![rugged.new timings](https://static.oschina.net/uploads/img/201703/07010521_uKSm.png)
我们的P99访问时间只是创建一个Rugged :: Repository对象,这是从磁盘加载和处理git对象,尖峰超过30秒,基本上不可用。 我们还看到,只是走过gitlab ce的分支需要2.4壁秒。
我们考虑移动到金属以解决我们的问题与更高性能的硬件,但是我们的用户在云中使用GitLab,所以它应该在那里工作。 这样,增加的性能将使每个GitLab用户受益。