猜你喜欢
阿里云云原生架构实践

阿里云云原生架构实践

书籍作者:阿里集团 ISBN:9787111681090
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:9324
创建日期:2021-10-07 发布日期:2021-10-07
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

这是一本从技术和商业双重视角剖析云原生如何赋能实际业务的著作,是阿里云智能云原生应用平台团队的经验总结,得到了阿里云智能总裁兼达摩院院长张建锋、阿里巴巴首席技术官程立、阿里云智能基础产品事业部负责人蒋江伟等专家的联袂推荐。


本书内容全面,对云原生所涵盖的技术和业务特性一览无余,从设计原则、模式/反模式、技术选项、设计方法、行业案例等多个维度全面总结阿里云云原生架构的方法论和实践经验。


第1章强调了云原生是云计算的再升级,重点介绍了在研发流水线、软件交付模式、运维模式、应用架构、组织结构等方面的升级,以及阿里云云原生架构发展的3个阶段;

第2章介绍了云原生架构的定义,以及云原生架构实际落地时需要遵循的7个关键原则。

第3章总结了云原生架构的10种模式和5种反模式。

第4章全面介绍了云原生所涉及的10余种技术,详细讲解了每种技术的典型架构与阿里的实践案例。

第5章以阿里云ACNA架构设计方法开篇,重点讲解评估云原生架构成熟度所需要考虑的维度与细则。

第6章从职能价值角度出发,阐述了云原生如何为不同岗位的业务赋能。

第7章聚焦于云原生架构落地,分享了多个具有代表性的企业案例和Z佳实践,这些最佳佳实践对于打造一个成功的云原生应用来说有非常大的帮助。

第8章对云原生背景下的容器技术、Serverless技术、大数据技术、数据库技术等的发展趋势进行了分析和展望。

作者简介

阿里云智能 基础产品事业部 云原生应用平台:致力于为企业打造数字创新的最短路径。历经15年的探索,阿里云是国内最早实践云原生的云服务商,拥有最丰富的云原生产品家族和Z全面的开源贡献,打造云原生裸金属服务器、云原生数据库、数据仓库、数据湖、容器、微服务、DevOps、Serverless等超过100款创新产品;构建完整的云原生技术与服务生态,覆盖新零售、政务、医疗、交通、教育等各个领域,推动企业快速实现数字化创新与业务增长。阿里云云原生面向未来定义研发、运维模式,推动Serverless、函数计算等现代化架构演进,拥有领先的产品技术竞争力,服务百万开发者,是云原生时代的引领者、践行者。

编辑推荐
适读人群 :开发人员:本书可帮助开发人员熟悉云原生架构的相关技术,使之能够从宏观架构的角度研究业务,从而拓宽技术视野,提升技术能力。□运维人员:本书可帮助运维人员提升运维实践

前言

为何写作本书 ?

如果你想得到从未拥有过的东西,你就得去做从未做过的事。

—托马斯·杰斐逊


20世纪60年代提出的云计算是20世纪最伟大的技术理念之一。伴随着云计算所引发的技术爆炸而产生的创新商业模式正在冲击着各行各业,声势浩大地改变着整个世界。支付宝重塑了我们的支付习惯,Netflix彻底颠覆了我们收看电视和电影的习惯,滴滴与Uber改变了我们交通出行的习惯,这一切在十几年前都是不可想象的。而现在,云计算与互联网的影响正在渗透到各行各业,为这些行业带来新的商业模式与业务逻辑。在云计算的驱动下,新的商业模式正在不断为人们创造更加美好的生活。


作为云计算的再升级,云原生为商业带来了更多元且海量的技术红利。比如,快速迭代与更快地使用新技术,利用云端资源的集群和弹性优势来降低经营成本并提高经济效益,借助云原生技术加速新商业模式的探索等。通过云原生,企业可以重新审视现有的商业模式,重新思考如何更好地构建新的商业模式。随着云原生应用的成功和普及,越来越多的企业开始采用云原生架构来开发软件,有些企业甚至还将云原生的理念运用到了传统企业软件的开发和交付中。


在IT架构日益复杂的今天,企业急需完整的技术与理论方法,以重塑软件全生命周期研发管理体系与技术栈,改造传统 IT 架构,融合先进技术,提高服务能力,为企业的高速发展提供支持,而这一套完整的技术与理论方法就是云原生。云原生作为企业各业务所需技术支持的提供方,通过自身的平台能力与服务能力,打造了一套高效、可靠的研发流程体系与技术支持体系。当出现新的市场变化、需要构建新的前台应用时,云原生可以迅速提供技术服务,从而能够敏捷地支持企业的创新。技术赋能业务,业务驱动技术,二者形成一个完整的闭环。


实际上,云原生不只是一种技术架构或者概念,单纯地加大技术和人才方面的投入是无法保障企业经营效能的持续提升的,只有站在技术价值观和方法论的高度,才能系统性地解决企业经营发展中关于技术的诸多问题。而谁能率先解决具有云计算特征的全新技术价值观和方法论的问题,并打造出平台级能力,谁就能从真正意义上使用云计算。
2019年是云原生技术爆炸的元年,阿里云认为云原生必将依循“概念引爆—落地尝试—规模复制”的认知升级路径,从行业头部企业普惠至更多中小型企业,成为云计算时代的“基础设施”。当前,很多人也正在努力尝试利用这些技术来设计和开发云原生应用。


本书将重点阐述云原生技术和架构建设的方法,这也是阿里巴巴多年以来在云计算领域的落地实践以及在云原生架构建设方面的经验总结。阿里云写作本书的初衷是,希望阿里巴巴的云原生技术以及架构建设方法能为计划进行数字化转型或者已经在数字化转型之路上奋力前行的企业决策者、业务推动者和技术实现者提供认知和升级方面的参考和借鉴,帮助企业结合自身特点,在战略规划的牵引下,从组织、保障、准则、内容、步骤五个层面综合考虑,最终建立起一套可持续发展的云原生架构,以加速企业的数字化转型进程。阿里云希望帮助开发者和架构师更从容地开启云原生应用设计之旅,与更广泛的行业从业者交流、分享,从而更好地帮助企业享受云计算所带来的技术红利,用技术驱动企业快速增长。

本书主要内容


本书不是教读者如何一步步打造一个满足特定业务需求的云原生应用,而是告诉读者如何设计、构建和运维一个优秀的云原生应用,让读者了解云原生能为企业带来什么样的实际业务价值。在实现业务需求的过程中,使用说明固然很重要,但只有系统性地理解云原生应用的基本原理、架构设计规则和构建方法,才能更好地打造成功的云原生应用。


本书聚焦于云原生业务形态背后的技术选型和架构设计落地,从“技术+商业”的视角阐述如何利用云原生赋能业务,并结合阿里巴巴云原生技术团队在云原生领域的探索与沉淀,帮助企业重塑软件全生命周期研发管理体系与技术栈。


本书将回顾阿里云多年积累的云原生实践经验,分享云原生为业务带来巨大技术红利的经验。具体章节划分及主要内容如下。


第1章主要介绍云原生的重要性,以及企业内部云原生落地的现状与所面临的挑战。
第2章重点阐述云原生架构的定义,以及云原生架构在企业中实际落地时需要遵循的关键原则。
第3章为读者介绍云原生架构的各种模式与反模式。
第4章进一步介绍容器和微服务等云原生相关的技术和理念。
第5章以阿里云ACNA架构设计方法开篇,重点讲解评估云原生架构成熟度所需要考虑的维度与细则。
第6章从职能价值角度出发,阐述云原生对于不同岗位的业务赋能。
第7章聚焦于企业落地价值,分享具有代表性的企业案例和最佳实践。这些最佳实践对于打造一个成功的云原生应用来说具有非常大的帮助。
第8章从行业角度出发,阐述未来的云原生技术发展趋势。
附录A简要介绍了阿里云现有的云原生产品家族。
附录B总结了一些常见分布式设计模式。

本书读者对象


开发人员:本书可帮助开发人员熟悉云原生架构的相关技术,使之能够从宏观架构的角度研究业务,从而拓宽技术视

目录

序1

序2

序3

前言

第1章 云原生:云计算的再升级1

1.1 什么是云原生1

1.1.1 云原生的概念1

1.1.2 云原生是云计算的趋势5

1.1.3 支撑淘宝千亿交易背后的技术平台故事6

1.2 云原生是云计算的再升级8

1.2.1 重塑研发流水线9

1.2.2 重新定义软件交付模式9

1.2.3 运维模式的升级11

1.2.4 应用架构的升级12

1.2.5 组织结构的升级13

1.3 构建现代化应用14

1.3.1 现代化应用及其特点14

1.3.2 云原生架构的提出14

1.3.3 云原生架构能为企业带来什么价值16

1.4 案例:阿里巴巴云原生发展实践17

1.4.1 应用架构互联网化阶段18

1.4.2 核心系统全面云原生化阶段18

1.4.3 云原生技术全面升级阶段19

1.5 本章小结19

第2章 云原生架构的定义和原则21

2.1 云原生架构定义21

2.1.1 降低研发成本和项目维护复杂度22

2.1.2 加快软件迭代速度,降低管理和运行成本23

2.2 云原生架构原则24

2.2.1 服务化原则25

2.2.2 弹性原则26

2.2.3 可观测原则28

2.2.4 韧性原则29

2.2.5 所有过程自动化原则30

2.2.6 零信任原则32

2.2.7 架构持续演进原则34

2.3 本章小结35

第3章 云原生架构的模式和反模式36

3.1 服务化架构模式36

3.1.1 服务接口定义37

3.1.2 IDL定义37

3.1.3 OpenAPI 38

3.2 Service Mesh化架构模式40

3.2.1 Service Mesh之Sidecar模式41

3.2.2 Service Mesh之服务注册和发现模式45

3.2.3 Service Mesh之中心化Broker模式48

3.3 Serverless架构模式51

3.4 计算存储分离模式54

3.5 分布式事务模式55

3.5.1 两阶段提交55

3.5.2 BASE56

3.5.3 TCC56

3.5.4 Saga57

3.5.5 AT58

3.6 可观测架构模式59

3.6.1 日志60

3.6.2 度量60

3.6.3 追踪62

3.6.4 事件流订阅63

3.7 事件驱动架构模式63

3.7.1 什么是事件64

3.7.2 事件的生成和消费64

3.7.3 事件异步通信65

3.7.4 数据变更捕获65

3.7.5 读写分离66

3.8 网关架构模式67

3.9 混沌工程模式68

3.10 声明式设计模式69

3.11 典型的云原生架构反模式70

3.11.1 庞大的单体应用70

3.11.2 单体应用“硬拆”为微服务71

3.11.3 缺乏自动化能力的微服务71

3.11.4 架构不能充分使用云的弹性能力72

3.11.5 技术架构与组织能力不匹配73

3.12 本章小结74

第4章 云原生技术及概念介绍75

4.1 容器技术75

4.1.1 容器技术的背景与价值75

4.1.2 典型的容器技术77

4.1.3 应用场景案例:申通基于Kubernetes的云原生化81

4.2 DevOps技术84

4.2.1 DevOps的技术背景与价值84

4.2.2 DevOps的原则与技术85

4.2.3 应用场景案例:阿里巴巴DevOps实践91

4.3 微服务93

4.3.1 微服务的背景与价值93

4.3.2 微服务的设计约束原则与典型架构94

4.3.3 应用场景案例:阿里巴巴的Dubbo实践98

4.4 Serverless99

4.4.1 Serverless的技术背景与价值99

4.4.2 Serverless的典型技术与架构100

4.4.3 应用场景案例:越光医疗巧用Serverless容器提升诊断准确度102

4.5 开放应用模型103

4.5.1 OAM的技术背景与价值103

4.5.2 OAM的典型原则与架构104

4.5.3 应用场景案例:KubeVela基于Kubernetes OAM实现106

4.6 Service Mesh技术109

4.6.1 Service Mesh的技术背景与价值109

4.6.2 Service Mesh的典型技术与架构110

4.6.3 应用场景案例:阿里巴巴Service Mesh实践112

4.7 分布式消息队列114

4.7.1 分布式消息队列的背景与动机114

4.7.2 分布式消息队列的典型技术与架构115

4.7.3 应用场景案例:阿里巴巴的RocketMQ实践117

4.8 云原生数据库技术119

4.8.1 云原生数据库的技术背景与价值120

4.8.2 云原生数据库的典型技术120

4.8.3 应用场景案例:PolarDB助力银泰实现快速云化138

4.9 云原生大数据139

4.9.1 云原生大数据的技术背景与价值140

4.9.2 云原生大数据的典型技术140

4.9.3 应用场景案例150

4.10 云原生AI153

4.10.1 云原生AI的技术背景与价值154

4.10.2 云原生AI的典型技术154

4.10.3 应用场景案例:利用云原生AI打造新一代社交推荐平台157

4.11 云端开发159

4.11.1 云端开发的技术背景与价值159

4.11.2 应用场景案例:杭州幻熊科技借助云效平台实现每日交付162

4.12 云原生安全164

4.12.1 云原生安全的技术背景与价值165

4.12.2 云原生安全的典型技术166

4.13 本章小结178

第5章 阿里巴巴云原生架构设计179

5.1 云原生架构的四个不同成熟阶段180

5.2 ACNA的概念181

5.2.1 ACNA-S1:企业战略视角182

5.2.2 ACNA-S2:业务发展视角183

5.2.3 ACNA-S3:组织能力视角183

5.2.4 ACNA-S4:云原生技术架构视角184

5.2.5 ACNA-S5:架构持续演进闭环185

5.3 云原生架构成熟度模型187

5.3.1 6个评估维度187

5.3.2 评估模型的实施指导和工作表188

5.3.3 服务化能力的评估190

5.3.4 弹性能力的评估191

5.3.5 无服务器化程度的评估191

5.3.6 可观测性的评估192

5.3.7 韧性能力的评估193

5.3.8 自动化能力的评估194

5.4 如何向云原生架构迁移194

5.4.1 技术栈迁移评估表195

5.4.2 组织和文化的改变195

5.4.3 现有产品的迁移路径197

5.4.4 项目实施关键点197

5.5 架构风险控制198

5.6 本章小结200

第6章 云原生落地实践对不同岗位的影响201

6.1 CXO和IT主管201

6.1.1 外部环境201

6.1.2 内部环境202

6.2 架构师/咨询人员/系统规划人员203

6.3 开发人员204

6.4 运维人员206

6.5 软件交付工程师/系统集成工程师207

6.6 从数据库管理员到数据库架构师208

6.7 本章小结210

第7章 不同行业的云原生架构实践211

7.1 完美日记的云原生之路211

7.2 突围数字化转型,云原生赋能特步新零售214

7.3 落地云原生,联通构建新一代云化业务支撑系统220

7.4 申通快递核心业务系统云原生之路223

第8章 云原生架构的发展趋势227

8.1 容器技术的发展趋势227

8.2 基于云原生的新一代应用编程界面的发展趋势232

8.3 Serverless发展趋势233

8.4 采用云原生技术的软件交付模式235

8.5 云原生大数据发展趋势237

8.6 云原生数据库的发展趋势238

8.7 本章小结240

附录A 阿里云云原生产品介绍242

附录B 常见分布式设计模式257