写点什么

谷歌副总裁谈未来云计算的方向:容器和微服务

  • 2015-06-01
  • 本文字数:1107 字

    阅读完需:约 4 分钟

近日,谷歌公司副总裁、CAP 理论的提出者、加州大学伯克利分校教授 Eric Brewer 接受了 Mesosphere 公司高级研究分析师 Derrick Harris 的采访。Eric 教授就采访中提到的容器技术与 CAP 理论等方面的问题一一进行了回答。

容器技术何以现在崛起?

Eric 教授表示他目前在谷歌主要负责 Kubernetes 和容器相关的项目。在此之前,他已经通过开发 Inktomi 搜索引擎积累了相关的经验。与谷歌公司相同,Inktomi 团队都是在硬件而不是虚拟机上以多进程的方式来运行不同的应用程序。而容器技术正是这种多进程运行方式的更高层抽象。因此,Eric 教授表示他之前就相信,由这样经验丰富的团队开发的容器集群管理系统 Kubernetes 必然会取得成功。但是,现在社区中每天提交代码和评论的数量如此之多还是超出了他的预期。Kubernetes 团队不得不努力提高处理代码和评论的速度。

Eric 教授还进一步透露了 Kubernetes 与 Borg 及 Omega 的关系。Borg 和 Omega 是谷歌之前就已经开始使用的资源编排系统。为了方便用户,谷歌在这两个项目的基础上提出了开源的 Kubernetes。该项目充分借鉴了之前两个项目中积累的经验以及教训。

CAP**** 理论如何指导分布式系统设计?

接下来,Eric 教授与 Derrick 讨论了关于 CAP 理论的问题。CAP 理论是 Eric 教授在 2000 年 PODC 研讨会上提出的一个猜想:一致性、可用性和分区容错性无法在分布式系统中被同时满足,并且最多只有两个能够被同时满足。该猜想首次把一致性、可用性和分区容错性这三个因素总结出来作为系统设计的重要特征,并断言用这三点可以划分所有的分布式系统,指明了这三个特征之间不可能同时共存的关系。Eric 教授表示,当初提出该理论时,他也十分困扰,认为分布式系统在无法全连接所有节点时必须要在可用性与一致性上进行选择。多年后再看 CAP 理论,他现在有了更加清晰和深刻的理解。通过 Bigtable、Cassandra 以及 Dynamo 等数据管理系统在这方面的探索,大家也意识到了该理论的真正含义。Eric 教授举了一个自动取款机(ATM)的例子。在 ATM 无法连接服务器的时候,分布式系统的一致性和可用性的确不可能被同时满足。但是,银行一般会采用提供小额单次取款服务的方式来进行折中。也就是说,系统通过允许一定的不一致性来获得一定的可用性。而且,通过审计 / 赔偿的方式,金融系统很好的解决了类似问题。至于构建新的应用时,Eric 教授认为只要开发人员领会 CAP 理论的含义并制订了应对策略即可。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-06-01 00:502385
用户头像

发布了 268 篇内容, 共 135.5 次阅读, 收获喜欢 24 次。

关注

评论

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

软件测试 | 测试开发 | 一种基于视频帧差异视频卡顿检测方案

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Golang协程池的使用

测吧(北京)科技有限公司

测试

Ribbon都有哪些负载均衡的策略?

想要飞的猪

Ribbon

软件测试 | 测试开发 | 用模拟器实现视频流的音画分离

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Pandas数据分析及可视化应用实践

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Aiomysql 与 Sqlalchemy 的使用

测吧(北京)科技有限公司

测试

字节跳动基于Doris的湖仓分析探索实践

字节跳动数据平台

数据仓库 数据湖 Doris Hudi 湖仓一体

史上最全499道Java面试题:JVM+分布式+算法+锁+MQ+微服务+数据库

Geek_0c76c3

Java 数据库 开源 架构 面试

阿里面试官内部题库!阿里发布2022年Java社招岗(正式版)面试题

Geek_0c76c3

Java 数据库 开源 程序员 架构

软件测试 | 测试开发 | GraphQl:让你的接口所得即所要

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 基于NSQ搭建高可用分布式消息队列

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Android App 保活服务的配置与禁用

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 分布式自增ID算法Snowflake简介

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | UI遍历中页面定义和动作事件筛选方法

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | TorchServe搭建codeBERT分类模型服务

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Thinkphp5 集成 Swoole

测吧(北京)科技有限公司

测试

8万字208道Java经典面试题总结(附答案)

Geek_0c76c3

Java 数据库 开源 程序员 开发

喜迎华诞!10月月更伴随着国之盛庆向你走来!

InfoQ写作社区官方

热门活动 10月月更

我与CI流水线的羁绊,任谁也无法斩断!

极狐GitLab

DevOps 持续集成 jenkins CI/CD 极狐GitLab

hystrix熔断器的工作流程与它的舱壁模式

想要飞的猪

Hystrix hystrix名词概念

软件测试 | 测试开发 | ThinkPHP 接口开发过程

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 相似图像的检测方法

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Lambda表达式介绍和底层实现分析

测吧(北京)科技有限公司

测试

IDC发布《中国边缘云市场解读(2022)》:阿里云蝉联中国公有云市场第一

阿里云CloudImagine

边缘计算 公有云 边缘云

禅道的工时管理

禅道项目管理

项目管理 工时 禅道

软件测试 | 测试开发 | 堆排序原理及实现

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Tornado 异步性能分析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 提高Android云真机稳定性的方法

测吧(北京)科技有限公司

测试

探究MYSQL之索引

C++后台开发

MySQL 中间件 后端开发 C++开发 数据库索引

软件测试 | 测试开发 | code2vec 代码的连续分布式矢量表示

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 分布式锁的实现方案

测吧(北京)科技有限公司

测试

谷歌副总裁谈未来云计算的方向:容器和微服务_Google_张天雷_InfoQ精选文章