猜你喜欢
云端架构:基于云平台的41种可复用的架构最佳实践

云端架构:基于云平台的41种可复用的架构最佳实践

书籍作者:吕昭波 ISBN:9787121428203
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:5842
创建日期:2022-12-25 发布日期:2022-12-25
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

云计算发展多年,应用领域变得越来越广泛,通过整理云计算解决方案与应用案例,将总结的“在云端构建业务的通用架构模式”整理为本书。本书围绕云计算架构设计的合理部署、业务持续、弹性扩展、性能效率、安全合规、持续运营这6大原则提炼了41种架构设计模式,每种设计模式相对独立,将多种设计模式组合又能构建解决方案。

本书描述了架构设计的流程、架构设计量化模型、架构设计中需要避免的“坏味道”和需要参考的最佳实践。通过书中的架构设计模式,还可以形成架构师进行云端业务架构设计的清单,以便衡量和评估架构方案的完整性及合理性。

本书提供示例项目MumuLab用于动手实践,MumuLab是一个完整的云端架构设计模式学习平台,也是对架构成熟度进行评估的平台,该项目贯穿全书多个章节,保证了案例的完整性和连续性。同时给读者提供可以自行下载和运行的系统代码,以便学练结合,通过动手实践来验证书中的架构设计模式和最佳实践。

本书适合云计算解决方案架构师、销售和市场运营人员、对云计算有初步认识且需要进阶学习的技术人员,也可作为素材帮助在校大学生学习云计算解决方案的架构设计。


作者简介

吕昭波

目前任职于UCloud,担任启云学院负责人,历经解决方案架构师、市场运营、生态合作、培训认证等岗位,负责搭建UCloud培训认证体系,组织并讲解数百场培训,人称“吕校长”。
善于在繁杂的解决方案及案例中提取共性、可复用的实践经验,致力于探究构建、重构良好的架构并实现量化与评估,乐于通过灵活的讲解、实验、实践、演练等形式进行技术布道与新技术的应用。


编辑推荐
适读人群 :云计算解决方案架构师、销售和市场运营人员、对云计算有初步认识且需要进阶学习的技术人员

★ 提炼6大云端架构设计原则,指导云端架构的构建、重构、评估

★ 总结架构设计中要遵循的最佳实践、要摒弃的坏味道

★ 多年解决方案设计经验提炼出可复用的41种设计模式,化繁为简

★ 首次提出公有云量化评估模型,包含适用性、成熟度、健壮性

★ 提供MumuLab配套实践网站,支持在线学习、动手实验与练习

★ 作者曾组织讲解上百场培训,针对不同人员学习“对症下药”

★ 无技术锁定,适用UCloud/阿里云/华为云/腾讯云/AWS等云平台

★ 作者绘制175张全彩色配图辅助架构解析,免费获取


前言

前言

0.1 关于梦想

笔者在大学生涯刚开始的第二天就策划创建学校英语社团,并起了一个有梦想的名字——“梦想之星”英语社,到现在已经过去15年了。然后便通过一次次ACM竞赛和活动来追逐自己心中的梦想。

大学毕业后刚开始工作时,笔者就梦想着通过代码来改变世界,当时也正赶上“千团大战”,再加上Facebook和六度空间理论,也尝试了基于大学校园、基于三四线城市的本地社交平台。再往后笔者拼命地转型学习云计算,并推出了云计算在线动手实验平台“梦想学院”,正是因为这些,笔者拿到了UCloud的Offer,虽然还没有通过代码改变世界,但改变了自己的认知。

笔者历经解决方案架构师、培训师等岗位,通过培训、动手实验来为技术布道,通过架构设计来解决用户项目中的技术问题。这要求笔者不断学习新的技术、新的行业场景、新的架构设计方法论并提炼云计算最佳实践,为用户、开发者、大学生及内部员工普及技术,为IT行业的知识传播、技术演进贡献自己的力量,他们有所收获便是笔者的梦想。

接下来笔者还需要继续学习,不断提升自己,提炼总结,再进行分享。

0.2 关于云计算架构

提及云,想必大家已不陌生,云已在各行各业中落地。在分析不同行业业务场景的案例和解决方案时,可以发现在技术痛点、业务需求、技术解决方案上很多都大同小异。纵观云服务商的解决方案,一般分为行业解决方案、技术或通用解决方案,行业解决方案会按照新零售、金融、政务、医疗健康、教育等行业进行划分,每个行业中又分为不同的子行业或场景,这些是带有行业属性的。例如,新零售行业遇到的经典场景是“双11”等大促带来的业务流量高峰,需要保证业务持续可用;游戏行业业务重点考虑服务器与玩家之间的网络质量及体验友好度。业务连续性、数据可靠性、系统可扩展性、数据安全是系统架构设计永恒的话题,这些技术解决方案结合业务场景就是行业解决方案。

在缤纷的行业场景和案例中,我们抽丝剥茧探究通用的技术解决方案,其中并非无章可循,云架构设计围绕6大原则:合理部署、业务持续、弹性扩展、性能效率、安全合规、持续运营。这6大原则适用于传统业务架构,也适用于互联网等各个行业。在云端如何围绕这些设计原则展开架构设计呢?我们通过整理各行业在云端的落地案例、解决方案,提炼了41种架构设计模式。

从另一个角度,我们有了架构设计模式,就可以像积木模块一样将其灵活组合成架构的“拼图”,就像一味味中草药可以组成大夫的药单来医治百病。因此,在本书中将会用大量篇幅来介绍这41种架构设计模式,当然这些架构设计模式也是围绕云架构设计的6大原则展开的。

设计模式这个词广泛应用于IT领域,其更早的来源是建筑领域的通用设计方法论的总结。其实重要的不是设计模式的名称,而是提出的对同一领域的问题提供可复用的解决方案的设计思路。本书提供了架构设计模式,也希望读者能结合自己的学习、工作场景来总结适合自己的可复用的架构设计模式。

0.3 本书的内容组成

本书共三篇。

第一篇重点介绍云计算体系、设计模式及架构设计方法,引入MumuLab作为示例项目来实践。

第1章从5层架构的云计算架构体系开始介绍云计算,从云计算的优势来分析其给我们带来的思维变革,最后介绍云计算架构的设计流程和6大设计原则。

第2章介绍本书中配套的实践项目MumuLab,我们可以通过这个平台在线学习架构设计模式,还可以将其作为动手练习的项目,因此有必要了解MumuLab平台的功能和设计初衷。

第二篇包括开篇的设计模式全景图及围绕6大设计原则展开的41种架构设计模式。

第3章介绍了设计模式之间的关系并构建了设计模式全景图,提出了架构设计过程中的最佳实践与坏味道。

第4章介绍合理部署,包括公有云、私有化、混合架构、全球部署、多云部署5种类型。

第5章介绍业务持续的设计中需要考虑可用性、可靠性,以及业务与数据的可恢复性。

第6章围绕弹性扩展展开介绍,介绍如何实现数据访问与存储的动静分离、组件之间的解耦,介绍云主机、数据库、私有化部署的扩展能力,也介绍了通过迁移实现扩展的方案,最后通过流量转发及全局负载均衡将业务负载分发到各个解耦的组件中。

第7章围绕提升性能效率展开介绍,包括提升计算性能,通过Redis、CDN等缓存技术实现访问加速、网络优化,选择最优部署地域拉近最终用户与业务之间的距离、降低网络延迟,通过应用性能管理对当前业务系统进行性能检测。

第8章围绕安全合规展开介绍,介绍了不可忽略的账号与权限的管理、对应用和资源的访问控制,在架构设计之初就考虑等保测评、满足合规要求等会事半功倍,还从终端安全、数据安全、网络安全、应用安全、审计合规等模块逐一介绍如何应对不同类型的安全风险。

第9章围绕持续运营展开介绍,汇总了云服务等级协议SLA、云监控告警、成本优化等内容,也包含了对冷热数据分层处理和数据开放及隐私计算的介绍,通过持续运营定期巡检、评估、复盘来保证业务架构持续满足变化的业务需求,保持良好的架构设计。

第三篇包括应用、评估、总结与展望。

第10章从新零售行业、游戏行业、传统行业介绍了三类应用场景,并尝试通过设计模式灵活组合的方式来构建解决方案。

第11章介绍了架构评估与重构的时机,随后展开介绍了如何进行适用性评估、成熟度评估、健壮性评估。

第12章对本书进行概要总结,从个人角度对云计算的发展进行展望。

0.4 阅读指引

本书涵盖41种架构设计模式、MumuLab平台完整案例、3个行业解决方案案例,读者可以根据需要选择不同的阅读顺序。

本书介绍了公有云部署、具备可扩展性、实现基础高可用及数据备份、缓存加速、性能优化及高并发、存储周期及分析、安全、高可用进阶、私有+混合、全球化、持续运营优化。

路径一:对云计算产品、场景还不太熟悉,建议按照章节顺序阅读,先了解云业务架构设计的概况,再通过真实案例分析MumuLab有哪些需求,在云平台中如何解决,第4章至第9章将会详细介绍每种设计模式,在第10章的行业场景案例中进行练习,将设计模式应用到实际工作的不同行业场景中。

路径二:对云计算产品已经比较熟悉,建议从第3章开始阅读,先全览设计模式,再详细阅读第4章至第9章的每种设计模式,最后阅读第2章的完整案例和第10章的行业延伸案例。

路径三:如果你打算从行业切入,则可以选择新零售等互联网应用、游戏等跨地区的业务、传统业务数字化转型、创新创业平台,找到比较接近的行业和方案,直接跳转到第10章的具体行业场景案例进行阅读,每个行业的需求和痛点不同,提供的解决方案也不同,之后再通过浏览MumuLab完整案例进行设计模式全景图的补充。

路径四:按照业务系统部署、设计阶段,先考虑如何部署系统,再考虑可用性、扩展性、性能、安全、可持续运营等,按照阶段进行架构的迭代设计和螺旋式架构演进。

0.5 使用MumuLab项目进行练习与实践

完成实验

如前面所述,MumuLab平台项目会贯穿全书,每章节中的应用案例都来自该项目。在应用案例和动手实验环节中,重点是实践解决方案的实现过程,可以忽略不同云平台的差异及项目中的代码语言和框架。每章节中的动手实验环节均可实际操作,如有问题,可以通过平台进行留言或通过邮箱进行交流。

在实现具体实验时可能会遇到问题,这时可以回顾一下设计模式全景图,从全局角度上概览整个项目所涉及的业务痛点及解决方案的演变过程。

“刷题”式练习

如果是用碎片化的时间阅读本书,可以逐个完成实验并在MumuLab平台中进行提交,提交后可以获得实验积分。通过积分可以兑换一些礼品,通过这些方式让你与其他读者一起进步,带给你“陪伴式”学习的感受。

MumuLab平台不仅是贯穿本书的实践项目,还是用来承载本书实验、解答、提交实验结果、竞赛的平台,这也使得平时训练的项目就是正在运行的线上平台,不至于模拟一个只可看不可练的示例平台。

MumuLab 链接:请通过“读者服务”获取。

0.6 致谢及联系我们

每一位当下的梦想者都在信息化与数字化浪潮中推动技术创新、技术应用、知识普及,笔者能够在这创新时代的浪潮中追逐梦想,深感荣幸。感谢UCloud提供了良好的学习与锻炼的平台,感谢UCloud启云学院的各位讲师、学员在多次培训交流过程中的灵感碰撞、经验沉淀、最佳实践的提炼。感谢身边的朋友一直以来的帮助和鼓励,笔者受益匪浅。

感谢刘华、张悦兰、王彬、何梦君、郭凯、王威武、李诗萌、黄玲利、赵娜、张薇、左冬冬、魏宾宾、刘坚君、高亮、周恭元、薛翎军、沈晓勇等同事和朋友参与本书内容的讨论和修订,经过多次沟通与修订,尽可能让书稿中的错误更少。

感谢妻子刘宁对笔者梦想的理解和支持,在笔者编写本书的过程中细心照顾家庭,为笔者挤出了大量时间,在整个过程中不厌其烦地聆听书稿一点一滴的进展和一次次编写思路的优化更新,同时参与了部分公式的设计和部分章节的文字核对。还要感谢宝贝儿子沐然、沐橦,他们的每个微笑和可爱瞬间都让笔者的疲劳瞬间消散,也是笔者努力的动力所在。感谢父母的养育之恩,无论是“千里之行始于足下”的理念熏陶,还是无条件的信任、关心、鼓励,都让笔者能够勇敢追梦。有了你们的支持,笔者追逐梦想的信念更加坚定、脚步更加踏实!

笔者尽力修订了书中的内容,但难免有疏漏之处,烦请读者批评指正,谢谢!

微信订阅号:沐然云计算。


目录

目录

第一篇 概述

第1章 云计算架构设计

1.1 云计算架构体系

1.2 云计算带来的思维变化

1.3 架构设计流程

1.4 架构设计原则

第2章 实践项目:MumuLab

2.1 系统概述

2.2 模块一:云设计模式CDP界面

2.3 模块二:实验管理

2.4 模块三:统计分析

2.5 模块四:后端运维管理

第二篇 设计模式

第3章 可复用的设计模式

3.1 什么是架构设计模式

3.2 设计模式的逻辑关系

3.3 最佳实践与坏味道

第4章 合理部署

4.1 公有云——使用云主机快速部署业务

4.2 公有云——托管应用

4.3 公有云——托管服务器

4.4 私有化——私有化部署

4.5 混合架构——混合架构连通

4.6 混合架构——云管理平台

4.7 全球部署——全球部署

4.8 多云部署——多云部署

第5章 业务持续

5.1 可用性——地域内业务高可用

5.2 可用性——跨地域业务部署

5.3 可靠性——非结构化数据可靠存储

5.4 可靠性——采用高可用的云数据库

5.5 可恢复性——业务容灾

5.6 可恢复性——云端备份

5.7 可恢复性——数据库备份回档机制

第6章 弹性扩展

6.1 解耦——数据存储访问动静分离

6.2 解耦——通过消息队列解耦组件

6.3 扩展——计算自动伸缩

6.4 扩展——数据库层扩展

6.5 扩展——通过混合架构扩展本地能力

6.6 迁移——业务及数据迁移

6.7 均衡——流量转发及全局负载均衡

第7章 性能效率

7.1 计算——提升计算性能

7.2 缓存——缓存数据库

7.3 缓存——CDN缓存加速

7.4 网络——网络优化

7.5 网络——选择最优部署地域

7.6 性能测试——应用性能管理APM

第8章 安全合规

8.1 权限——权限策略与访问控制

8.2 安全防护——终端安全

8.3 安全防护——数据安全

8.4 安全防护——网络安全

8.5 安全防护——应用安全

8.6 审计合规——审计

8.7 审计合规——合规

第9章 持续运营

9.1 服务标准——云服务等级协议SLA

9.2 监控告警——云监控告警

9.3 成本——成本优化

9.4 数据——冷热数据分层存储

9.5 数据——数据开放及隐私计算

9.6 运营——持续运营

第三篇 应用与评估

第10章 行业场景案例

10.1 引言

10.2 新零售行业的架构设计

10.3 游戏行业的架构设计

10.4 传统行业的架构设计

第11章 评估与重构

11.1 评估与重构的时机

11.2 适用性评估

11.3 成熟度评估

11.4 健壮性评估

第12章 总结与展望

12.1 云的变化与趋势

12.2 经验的提炼与能力的复用

12.3 构建自己的浪潮之巅

附录A 云架构设计模式列表

附录B 云服务名称对应表

附录C 基于设计模式的解决方案编排模板

附录D Advisor巡检问题



产品特色