Github发布了一项新的功能,此功能可以大大减少代码服务器的停机时间。分布Git(DGit,Distributed Git)使用Git协议的同步策略在三个代码服务器之间复制Github的仓库。如果其中有一个服务器因为故障或者维护停机的话,请求会自动转发到另外两个正常的服务器上。
相比于简单地复制磁盘的内容进行同步,使用Git作为同步的方案给公司更加灵活。“有了Git的协议,三个服务器可以灵活地同步git仓库,而不是复制完全的镜像。”新系统的 博客 称。如果需要的话,读取请求可以直接被定向到某个仓库副本,如果其中一个文件服务器要关机的话,也可以方便地再创建新的副本。
使用Git协议的另一个好处是,可以利用之前的代码进行二次开发,经过深度的定制实现两个系统之间的同步。Github的博客说,“既然已经有了能跑的汽车,为什么要重复发明轮子呢?”使用Git意味着使用成熟的代码进行开发,错误较少。
DGit的发布是一个循序渐进的过程。Github称将会先迁移自己的仓库,以确保系统能正常工作。然后开始迁移第三方和公开的仓库。最后是最刺激的部分:“尽可能使用DGit,现在已经有58%的仓库迁移完成了,剩下的也会尽快迁移,”Github说,“DGit是一个基础功能,将来会驱动更多精彩的功能。”
DGit目前最大的优点就是更加稳定,服务器停机的时间更少,即使面对突发事故和攻击,其他服务器也可以正常工作。
第三方也有类似的服务,例如Anam.io的 仓库备份服务 ,竞争对手Gitlab也有类似的服务 open source alternative 。但是对于很多公司和组织来说,最省心的方式还是迁移到Github,Github在 企业解决方案 方面做的越来越好了。