网站大量收购独家精品文档,联系QQ:2885784924

极客时间洞悉平台本质.pdfVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

26|洞悉PaaS平台的本质

2017-12-28,

26|洞悉PaaS平台的本质

朗读人:柴巍11′33′′|5.29M

在了解了前面几篇文章中提的这些问题以后,我们需要思考一下该怎样解决这些问题。为了解决这

些问题,请先让我来谈谈软件工程的本质。

我认为,一家商业公司的软件工程要体现在三个地方。

第一,提高服务的SLA。

所谓服务的SLA,也就是我们能提供多少个9的系统可用性,而每提高一个9的可用性都是对整个

系统架构的重新洗礼。而提高系统的SLA主要表现在两个方面:

高可用的系统;

自动化的运维。

你可以看一下我在CoolShell上写的《关于高可用系统》,这篇文章主要讲了构建高可用的系统需

要使用分布式系统设计思路。然而这还不够,还需要一个高度自动化的运维和管理系统,因为故障

是常态,如果没有自动化的故障恢复,很难提高服务的SLA。

第二,能力和资源重用或复用。

软件工程还有一个重要的能力是让能力和资源可以重用。其主要表现在如下两个方面:

软件模块的重用;

软件运行环境和资源的重用。

为此,需要我们有两个重要的能力:一个是“软件抽象的能力”,另一个是“软件的能力”。你可

以认为软件抽象就是找出通用的软件模块或服务,软件就是使用统一的软件通讯协议、统一

的开发和运维管理方法……这样能让整体软件开发运维的能力和资源得到最大程度的复用,从而增加

效率。

第三,过程的自动化。

编程本来就是把一个重复的工作自动化的过程,所以,软件工程的第三个本质就是把软件生产和运

维的过程自动化起来。也就是下面这两个方面:

软件生产流水线;

软件运维自动化。

为此,我们除了需要CI/CD的DevOps式的自动化,也需要能够对正在运行的生产环境中的软件进

行自动化运维。

通过了解软件工程的这三个本质,你会发现,我们上面所说的那些分布式的是高度一致的,

也就是下面这三个方面的能力。(是的,世界就是这样的。当参透了本质,你会发现世界是大

同的。)

分布式多层的系统架构。

服务化的能力供应。

自动化的运维能力。

只有做到了这些,我们才能够真正拥有云计算的。这就是所谓的Cloutive。而这些目标都

完美地体现在PaaS平台上。

前面讲述的分布式系统关键技术和软件工程的本质,都可以在PaaS平台上得到完全体现。所以,

需要一个PaaS平台把那么多的东西给串联起来。这里,我结合自己的认知给你讲一下PaaS相关

的东西,并把前面讲过的所有东西做一个总结。

PaaS平台的本质

一个好的PaaS平台应该具有分布式、服务化、自动化部署、高可用、敏捷以及分层开放的特征,

并可与IaaS实现良好的联动。

下面这三件事是PaaS跟传统中间件最大的差别。

服务化是PaaS的本质。软件模块重用,服务治理,对外提供能力是PaaS的本质。

分布式是PaaS的根本特性。多租户、高可用、服务编排是PaaS的基本特性。

自动化是PaaS的。自动化部署安装运维,自动化伸缩调度是PaaS的关键。

PaaS平台的总体架构

从下面的图中可以看到,我用了Docker+Kubernete层来做了一个“技术缓冲层”。也就是说,如果

没有Docker和Kubernete,构建PaaS将会复杂很多。当然,如果你正在开发一个类似PaaS的

平台,那么你会发现自己开发出来的东西会跟Docker和Kubernete非常像。相信我,最终你还是

会放弃自己的而采用Docker+Kubernete的。

在Docker+Kubernete层之上,我们看到了两个相关的PaaS层。一个是PaaS调度层,很多人将

其称为iPaaS;另一个是PaaS能力层,通常被称为aPaaS。没有PaaS调度层,PaaS能力层很

难被管理和运维,而没有PaaS能力层,PaaS就失去了提供实际能力的业务价值。而本文的

是在讲P

文档评论(0)

152****8708 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档