写点什么

谷歌启动容错 Git 管理系统项目:Git Ketch

  • 2016-02-17
  • 本文字数:954 字

    阅读完需:约 3 分钟

尽管 Git Ketch 项目开发才刚刚开始,谷歌公司已经对外宣布了他们的第一个Git 项目——Git Ketch,一个多主机Git 管理系统,能够通过访问多个Git 服务器来复制信息,以确保复制信息的复原性和可扩展性。所做的这些改变都是基于原有用Java 搭建的名为JGit 的Git 服务器基础之上的,虽然这里面的其它Git 服务器可能是多主机群集的一部分。

最初设计Git 的目的是将Git 打造成一个分布式源代码管理库系统,但是大多数组织都采用了一个集中式的方式:采用一个带有“黄金副本”代码的主库,所有开发者会在这个主库上做修改,然后以最终版本作为更新基础;尽管所有改动能从开发者的私库里直接调取,但很少有这么做的。

只不过这种集中式方法也会导致单点故障。不过别担心,JGit 提供了部分解决方案,那就是通过它的分布式文件系统(DFS)的存储选项。此选项仅能解决部分问题,因为JGit 只定义了一组抽象类,而这组抽象类又定义了DFS 存储协议,但支持数据复制和创建抽象类实现的整体架构则是由用户自己设计的。这就意味着组织已投入相当大的资源——为实现JGit DFS,项目组暂时还不能将JGit DFS 大范围推广使用,谷歌是少有的几个掌握DFS 实现的组织之一。

Ketch 所遵循的策略有些与众不同,不仅仅可以定义一个能够复制 DFS 数据的 Git 服务器,Ketch 还可以假定现存的多个普通 Git 服务器可以互相之间数据和状态同步,因此被称为“多主机”。在任何一个制定的节点上,这些服务器都可以当作“主机”来使用,其余的服务器当作“从机”来利用。任何时候向任何一台服务器发送请求,这个“请求”都会被转发给“主机”,该“主机”将会向所有其他服务器发送推送请求,一旦绝大多数“从机”服务器已经确认推送请求成功,“主机”会向初始呼叫对象确认操作已成功。这一机制是基于 Raft 算法,此算法能够确保至少大多数服务器能够接收已经做了变更的请求;任何服务器上的数据丢失,都可以通过其它服务器同步过来。目前,只有 JGit 服务器可以充当“主机”,虽然在多主机集群里任何 Git 服务器实现的原子推送都可以充当一个参与服务器。

这些已经提出来的改变均可以在 JGit 内部 Gerrit 里看到,关于未来在工具上的改进细节及进展都可以从 JGit 的电子邮件分发列表里获得。

查看英文原文: Google Kick-Starts Git Ketch: A Fault-Tolerant Git Management System

2016-02-17 18:002887
用户头像

发布了 25 篇内容, 共 80779 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

TDengine 签约寓信科技,推动智慧公寓的数字化转型

TDengine

数据库 tdengine

AI生成文档?代码有用,领域知识为王

Bruce Talk

AI 敏捷开发 DDD

低代码平台搭建CRM系统实现公海客户自动分配

低代码小观

低代码开发 低代码平台 低代码搭建crm系统

Gyges Labs引领行业变革,全球首款隐形显示AI眼镜亮相光博会

江湖老铁

一张图精通多种排序算法的选择策略

肖哥弹架构

Java 算法

TDengine 与 SCADA 系统无缝连接,点击查看全面操作指南

TDengine

数据库 tdengine 时序数据库

一文让你明白手游行业需要堡垒机的必要性

行云管家

网络安全 数据安全 堡垒机 手游

升华产品管理以提高业务敏捷性

ShineScrum

【YashanDB知识库】DBeaver无法访问数据库

YashanDB

yashandb 崖山数据库

地平线轨迹预测 QCNet 参考算法-V1.0

地平线开发者

自动驾驶 算法

【YashanDB知识库】archivelog磁盘满导致数据库abnormal

YashanDB

yashandb 崖山数据库 yashandb知识库

开源 TTS 模型「Fish Speech」1.4 发布;GameGen-O :生成开放世界游戏视频模型丨 RTE 开发者日报

声网

中小企业引入MES系统:提升生产效能

万界星空科技

数字化转型 工业互联网 制造业 生产管理系统 mes

【YashanDB知识库】数据库获取时间和服务器时间不一致

YashanDB

yashandb 崖山数据库 yashandb知识库

万界星空科技塑料制品行业MES解决方案

万界星空科技

制造业 mes 万界星空科技 塑料制品 塑料

淘宝API:淘宝商品评论数据接口(Taobao.item_review)

tbapi

淘宝商品评论接口 淘宝评论API 淘宝商品评论采集 淘宝店铺评论采集

降本增效、极简体验!828就选华为云Flexus云数据库RDS

轶天下事

【YashanDB知识库】YAS-02025 no free space in virtual memory pool

YashanDB

yashandb 崖山数据库 yashandb知识库

软件架构:问题起源和应对

FunTester

重庆飞亚实业:二维码革新,提升企业安全巡检效率

草料二维码

无代码 低代码平台 无代码平台 草料二维码 无代码低代码

淘宝商品详情API返回值中的预售与定制信息

技术冰糖葫芦

api 网关 API Gateway API 文档 API 测试 pinduoduo API

以 Buycbuy为蓝本:淘宝微店代购集运系统搭建秘籍

tbapi

淘宝代购系统 淘宝代购集运系统 华人代购系统 逆向海淘系统 代购商城系统

移动云参编全球首个大模型供应链安全国际标准

科技热闻

中国智能汽车腾飞,为什么异构算力是第一生产力?

脑极体

异构计算

咸宁等保测评机构在哪里?电话多少?

行云管家

等保 等级保护 等保测评 咸宁

探索端智能,加速大模型应用,火山引擎边缘智能 x 扣子技术沙龙等你来

火山引擎边缘云

机器人 智能IoT边缘服务 大模型

聊聊职场务实和务虚的事

老张

认知提升 职场成长

谷歌启动容错Git管理系统项目:Git Ketch_Java_Abraham Marín Pérez_InfoQ精选文章