721天、19万字的坚持 | 《云端架构》新书发布,梦想终至,不负时光

云端高可用应用架构 之前的几篇文章介绍了高可用应用,以及说明了高可用架构是云端应用的重要特点。今天的文章介绍一些高可用应用架构框架,大家可以从中作为云端应用设计方面的借鉴。   我将通过一个web应用的架构设计来说明这些架构,web应用的基础架构搭建在AWS上,利用AWS提供的相应服务,可以设计出不同的高可用方案。   1. 最简单的三层架构: 这与传统非云架构的三层架构一致,没有分布式架构,只拥有一个单独... 阅读详情
《云端架构》这本书,终于要出版了
历时721天、194869个字、175张图

打造一本云计算技术布道的书,适合的读者:

  • 云计算售前架构师、商务销售、技术支持人员
  • 云计算市场、战略、运营等相关人员
  • 互联网、传统企业等需要上云、数字化转型的企业用户
  • 需要掌握云计算等新技术、锻炼技术实践能力的在校学生
  • 刚接触云计算并打算进行深入学习的人员

为什么写这本书

云已不陌生,云已在各行各业中落地应用。分析不同行业业务场景的案例和解决方案,在技术痛点、业务需求、技术解决方案中很多都是大同小异。纵观云服务商的行业解决方案会按照新零售、金融、政务、医疗健康、教育、工业互联网、能源、交通、游戏等行业进行划分,每个行业中又分为不同的子行业或场景,这些还是带有行业属性的。

比如新零售遇到的经典场景是双十一、大促等带来的业务流量高峰,也需要保证业务持续可用;游戏行业业务重点考虑服务器到玩家之间的网络质量及体验友好度。业务连续性、数据可靠性、系统可扩展性、安全是系统架构设计永恒的话题,这些技术解决方案结合到业务场景就适用于行业解决方案。

写作历程

个人兴趣是跑步,从2014年开始跑马拉松,为了写书已经一年多没跑步了。就算有人信我能写本书,别人也不会相信我跑过马拉松。

用了两年时间来整理成书,这两年除了工作、照顾家里就是写书了,出差路上、下班后找个角落是最好的地方,也在各个地方留下了不同的回忆。在各种白板上整理思路,最后昏天暗地的写字。

在白板上梳理思路

书稿

画图

图片都是自己画的,当然,业界有非常成熟的图也会标明版权引用过来。

画41种设计模式的图标,不知道改了多少个版本,而每天能凑出来一两个小时有效时间需要附带甚至一两个小时的无效时间。

如果不是真的喜欢,又怎么会这么拼命呢?

如何使用PPT来画图,将会在后面有单独的文章介绍。

本书配图

本书配图

改了N遍的图

为本书中的配图确定标准颜色

那些年在麦当劳写字画图或者随便吃个1+1晚餐

那些年吃的麦当劳

抽丝剥茧提炼41种架构设计模式

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

《云端架构》提出了41种架构设计模式

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

关于架构方案在构建、重构、评估中的思考

架构设计完成后进行部署实施,在运行一段时间后需要重新审视架构是否符合当初的设计预期,并且可能会遇到真实流量高峰期、高并发访问、网络攻击等对系统造成挑战和损坏的情况。需要对系统进行定期评估巡检,评估是否需要重构,以保持架构设计满足变化的需求、系统持续更新、遵循架构设计原则和最佳实践。

为了更清晰地掌握架构的设计质量,对架构进行优化与重构,需要对架构设计进行量化。无论是基于传统服务器集群的业务架构,还是基于云平台的业务架构,对架构设计进行量化都是比较困难的事情。我们可以相对轻松地获得云主机使用数量、存储资源空间大小、网络流量、安全攻击事件,甚至因为遭受安全攻击造成的损失也可以进行量化。我们总结了融合三个维度的架构评估魔方模型,包括适用性评估、成熟度评估、健壮性评估。

  • 适用性评估
    用来评估业务需求是否适合采用云平台进行部署,是否能通过云平台的优势来解决业务痛点,应该采用哪种部署模式,适合在需求分析阶段进行评估。
  • 成熟度评估
    用来检测架构是否遵循 6 大原则和最佳实践进行了良好的架构设计,完成评估后将得出架构成熟度评分、等级及改进建议,适合在架构设计完成后立即进行评估,由重构时机触发评估。
  • 健壮性评估
    用来检测系统架构应对异常风险的能力,检验架构能否应对一些资源故障、云平台故障等意外状况和技术挑战,适合在架构设计完成后立即进行评估,由“评估与重构的时机”中的时机触发评估。

三种评估模型

书稿内容预览

部分书稿截图,所有的图都是自己原创或重新加工过的。除了极少数SLA等固定描述要原文引用,其他文字都是自己一点点写出来、原创的。

写书过程中也购买了很多书作为参考,也在网上找了大量资料学习,也记不清修改了多少遍书稿、画了多少遍图。

尽力为读者提供好的学习书籍,也请购买支持、积极交流提升。

《云端架构》书稿预览

配套学习+实验网站MumuLab

这个平台之前想了好多个名字,来回推翻,最后确定了MumuLab。示例项目MumuLab贯穿全书,每章节中的应用案例也都来自于此项目。MumuLab平台不仅是贯穿本书的实践项目,还是用来承载本书实验进行解答、提交实验结果、竞赛的平台,一石二鸟,这样也使得平时训练的项目也就是正在运行的线上平台。每章节中的应用案例也都来自于MumuLab,在平台中兼容各个云平台、采用原始通用的代码框架,尽可能适用于更广泛技术背景的读者。

MumuLab适合于利用碎片化的时间来学习云计算基础知识、架构设计模式、完成实验,每一项学习和实验任务都是自己的学习历程,也是向技术爱好者展现自己实力的机会,在这里一起学习、一起进步。完成每一项任务后进行打卡或提交实验结果,均可获得相应积分,积分可兑换书籍等奖品,也将有机会获得MumuLab证书、参加线下交流活动。

交流与购书

  • 先加微信,第一时间获得消息

添加微信请备注:姓名-城市-岗位

  • 关注微信号

沐然云计算

MumuLab

  • 本书配套学习网站,会逐步上线所有设计模式、分享的视频、可以进行动手体验的实验文档、学习和实验的积分Timeline & Ranklist,也会有部分考核作业
  • 此外,你可以拿MumuLab当作脚手架项目来实现公有云部署、私有化部署、实现混合架构、全球部署、多云部署。
  • 链接:MumuLab.cn

致谢

感谢在信息化、数字化浪潮中能够有机会追逐自己的梦想,奋斗在其中深感荣幸。感谢公司提供了良好的学习和锻炼的平台,感谢小伙伴交流沟通时的灵感碰撞、经验沉淀、最佳实践的提炼。感谢身边支持自己的朋友对我一直以来的帮助和鼓励,受益匪浅。感谢电子工业出版社董英老师和各位编辑的辛勤付出。感谢家人对我的理解、支持,要用更多时间陪陪家人,自己抽点时间去跑跑步,也重新思考如何学习、总结、分享。

也感谢坚持努力的自己,每天叫醒自己的不是梦想,而是闹钟,为了梦想已经熬到深夜。接下来又是新的开始,多陪陪家人、多与朋友交流,自己也还会继续奔跑、追逐梦想。

千里之行始于足下,一起携手再次出发!

从IDC到云端架构迁移之路 站点、服务、缓存、数据库一步步完成平滑迁移。 (1)互联网单机房架构的特点,全连,站点层全连业务服务层,业务服务层全连的基础服务层,基础服务层全连数据库和缓存; (2)多机房架构的特点,同连,接入层同连服务层,服务层同连缓存和数据库,架构设计上最大程度的减少跨机房的调用; (3)自顶向下的机房迁移方案:先进行站点接入层、业务服务层和基础服务层的迁移,搭建服务,逐步的迁移流量;然后是缓存迁移,搭建缓存,运维修改缓存的内网DNS指向,断开旧连接,重连新缓存,完成迁移;最后数据库的迁移,搭建数据库,数据进行同步,只读,保证数据同步完成之后,修改配置,重启,完成迁移。整个过程分批迁移,一个业务线一个业务线的迁移,一块缓存一块缓存的迁移,一个数据库一个数据库的迁移,任何步骤出现问题是可以回滚的,整个过程不停服务。 立即下载

相关推荐

单周期CPU设计【Verilog】

第一章 单周期CPU的设计原理 为实现单周期CPU,本文首先研究了单周期CPU的相关理论和工作原理。本章首先简要介绍单周期CPU的基本概念,然后对CPU的工作原理进行简要分析,以便为单周期CPU的设计和开发提供理论基础。 1.1 单周期CPU概述 中央处理器,即CPU,作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。在CPU内部,电平从低到高变化的瞬间称为时钟上升沿,两个相邻时钟上升沿之间的时间间隔称为一个时钟周期。单周期CPU指的是一条指令的执行在一个时钟周期内完成,然后开始下一

醉酒、冰城外 2万+

云架构及设计-阿里云

一个基于Web的可视化编排工具,可以轻松地绘制和管理阿里云上的资源,包括云服务器、数据库、存储和网络等。在总结,云架构设计是一项非常重要且具有挑战性的任务,需要考虑多种因素,从而确保系统具有高可用性、可伸缩性、安全性和成本效益。总的来说,云架构设计是一个复杂的过程,需要考虑多个因素,包括可用性、可伸缩性、安全性、成本效益以及选择合适的云服务。我们需要考虑网络的可用性、安全性、带宽、延迟等因素,并采取措施来确保网络的高可用性和安全性,从而提高系统的性能和可用性。云架构是指在云计算环境下的架构设计。

weixin_41007536的博客 4662

从零到一:移远EC200UCN_LA OpenCPU开发中的‘避坑’实战指南

本文详细介绍了移远EC200UCN_LA 4G通信模块的OpenCPU开发实战指南,涵盖开发环境搭建、项目构建、通信接口开发、调试技巧及固件升级等关键环节。通过避坑经验和实用技巧,帮助开发者高效完成二次开发,提升4G通信模块的应用开发效率。

weixin_29159711的博客 505

KubeEdge 云端架构设计

KubeEdge云端架构设计

看花容易绣花难 965

Android无线调试:adb tcpip连接实战指南

本文详细介绍了Android无线调试的完整流程,重点讲解如何使用adb tcpip命令通过Wi-Fi连接设备,摆脱数据线束缚。涵盖环境配置、连接实战、稳定性优化及常见问题排查,帮助开发者高效实现无线adb调试,提升工作效率。

pink的博客 723

【论文阅读】LIME:Low-light Image Enhancement via Illumination Map Estimation(笔记最全篇)

文章目录AbstractIntroductionContributionMethodSpeed-up Method(1):ALM子问题 T子问题 G子问题 Z和μ\muμSpeed-up Method(2):权重变量实验conclusion 今天要整理的一篇论文是使用传统的方法解决低照度的问题,Guo等人于2016年发表在IEEE上,论文《LIME:Low-light Image Enhance...

florrie 2万+

云服务架构与华为云架构

云服务架构是指设计和部署基于云计算的应用程序和服务的架构模式和方法。它的核心目标是最大化利用云计算的特性,如按需分配、弹性扩展、全球可达性和高可用性,以便提供可扩展、高效和可靠的服务。

FHY26828的博客 4249

Unity引擎开发:复杂动作系统_动作捕捉数据的应用与整合

通过以上步骤,我们可以在Unity中有效地应用和整合动作捕捉数据,以实现更加真实和流畅的动画效果。从导入文件格式的选择,到预处理和优化,再到实时应用和调试验证,每一步都至关重要。希望本文能帮助你在Unity项目中更好地利用动作捕捉数据,提升动画质量和性能。

chenlz2007的博客 958

从浅入深认识云,云平台架构的设计:上云,你准备好了吗?

云是一种比喻说法,就像我们平时看到的云一样,高出不胜寒,站在云端往下看,一切都很渺小。同样的,在云上部署你的应用,可以享受云端很多企业的经验总结,很多坑已经早就被排除掉了。这些企业、软件、系统,会集结成一套标准的套路来使用,所以,就像站在巨人的肩膀上,站在最高点来观察从开发到发布到运维的全过程。云,同样有敏捷的感觉,从发布到弹性伸缩,又高又快。云,主要指基于云计算和云服务的应用。云服务通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源,如IT和软件、互联网相关服务,甚至其他服务。

秃了也弱了 2868

物料分类账-返工工单(自身)差异分摊逻辑

如上图所示,当月入库的全部消耗,而返工消耗的数量为100PCS,所以返工消耗占总消耗的比例为100pcs/(205pcs+100pcs)=0.327868852。备注:红色箭头的物料号为产品自己本身所产生的价差,就是返工工单所承担的差异,而我们要计算的就是这个值,所以计算价差不会包括此项。价差合计就是不包括初始分摊的价差9153.7,剩下的价差合计就是返工工单自身所承担的差异4465.21。每一次返工工单所承担的差异都会按照价差*承担比例去计算承担的差异,知道承担完所有差异。

Yeol827的博客 2494

康复训练监测系统:基于YOLOv8的患者动作规范识别

本文系统介绍了基于YOLOv8的康复训练动作规范识别系统,从理论背景、数据准备、模型训练、推理应用到UI界面,提供了完整技术链条及代码示范。希望对康复领域的智能监测应用提供参考和借鉴。

YOLO 453

云端应用架构设计最佳实践

云端应用架构设计最佳实践 1. Azure VM临时磁盘: Windows下是D盘,Linux下是/dev/sdb,在部署应用或存放永久数据时不要放到临时磁盘,关机活着重启临时磁盘里的数据可能会丢失。 2. 存储账号中IOPs问题: 建议一个存储账号最多放20台VM,因为每个存储账号支持20000IOPs,而每块磁盘最大IOPS支持500,一个VM一般有2块磁盘,这样的话一个存储账号放20个VM就饱和和IOPS。 3. 创建VM的时候需要注意: 先创建D1或Dv2-1的V

Denny Duan's Technical World / 技术成就梦想改变生活。 4237

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

云端架构

背景   在看阿凡达的时候,感叹着他们接口的统一,和获取知识的便利性。有时候在想,现在很多企业所做的工作,不就是要提供这类服务吗。设想一下,我们有一朵公有云,存储了用户的数据、逻辑关系,提供标准的通讯接口,然后大家各自开发丰富的展现逻辑,让云端变的丰富多彩。这次很荣幸能接到这个议题,谈谈我个人对这朵云的理解。   每个人心中都有自己的一朵云,在我设想中,应该存在这么一种公有服务,它能够

jasonjwl的专栏 2787

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Redis云端架构深入浅出

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云数据库 TencentDB 发表于云+社区专栏 作者介绍:邹鹏,腾讯云数据库Redis产品负责人,多年数据库、网络安全研发经验。在网络、计算、存储、安全等领域有深入的研究和丰富的产品化经验。 在Redis、MySQL等数据库的高可用、高可靠和中间件方面有丰富的实践经验。 Redis作为当今最为流行的KV数据库,在近年被广...

weixin_33979745的博客 203

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

从IDC到云端架构迁移之路(GITC2016)

大家好,很高兴来到GITC2016的舞台,我是来自58到家的沈剑,今天我分享的主题是《58到家从IDC到云端架构迁移之路》。机房迁移是一个很大的动作:15年在58同城实施...

shenjian58的博客 789

云计算架构设计6大原则,你遵循了吗?| 赠书

2006年,第一个云计算(Cloud Computing)产品诞生,云计算的概念也被提出,现在云计算几乎已经渗入所有的行业和应用场景中。我们不一定能直接感受到云计算对日常生...

优快云云计算 1159

从项目开发到云端架构(04)

1.1.1            扩展系统 2.2.2.1    特点        当单一的部署模式即便通过集群部署后仍达不到期盼的高并发能力,那对系统的拆分就不可避免,通过拆分把负载分布在各个节点。系统的拆分包括了架构拆分和数据库拆分。架构拆分后需要考虑层次和模块的划分和部署,之间的调用模式,以及考虑事务处理问题;数据库拆分后需要考虑采取哪种模式,以及如果保证数据一致性问题。   ...

timeson 233

从项目开发到云端架构(14)

4.5  Cloudify        Cloud foundry作为业务第一个开源的paas,给我们带来了难得的学习和借鉴的机会,得以窥视paas的盒子内部的构造。Cloud foundry是基于ruby开发的,ruby相比之下比java开发的速度更快,这也是CF发展很快的原因之一把(原因之二,架构稳健,容易扩展)。如果把CF看作是大象,功能齐全,结构完整,那cloudify就是灵活的豹子...

timeson 395

Cloudify从项目开发云端架构

4.5  Cloudify        Cloud foundry作为业务第一个开源的paas,给我们带来了难得的学习和借鉴的机会,得以窥视paas的盒子内部的构造。Cloud foundry是基于ruby开发的,ruby相比之下比java开发的速度更快,这也是CF发展很快的原因之一把(原因之二,架构稳健,容易扩展)。如果把CF看作是大象,功能齐全,结构完整,那cloudify就是灵活的豹子

IOT之无线网络传输技术 7464

云上架构和传统IT架构的区别在哪里?(企业CIO、CTO必读)

在云计算走向成熟之前,我们更应该关注系统云计算架构的细节,从传统的架构到云上大数据,实现了很多的转变。传统的大数据平台计算和数据一般都在一起,到云上之后计算有可能是虚拟机、有可能是容器,存储和计算是分离的。任何计算节点访问存储时都是通过高速互联网络把数据迁移到本地来。实现的优势也就是大数据的服务化,灵活配置。因此,借助强大的计算性能,结合云计算平台的优势,从传统架构的大数据平台向云上数据的转变,将

aliyunhn的博客 2万+

从项目开发到云端架构(18)

5.3 扩展PaaS        在Paas平台的奴隶时代,平台的分布和管理都是基于操作系统的层面来处理的,指令由脚本来调用,利用操作系统提供的网络能力,进行应用/通用服务的远程处理;业务和系统的状态的存储和查询采用的关系数据库;并利用现有或改进的工具对系统和应用进行监控,检查系统的健康状况。这是一种行之有效的方法,并肯定在众多网络公司也或多或少的得到了有效的应用。        但这种架...

timeson 484

云端高可用应用架构(二)

继续介绍云端高可用应用架构,上文已经介绍了三种常用的架构,下面的两种则是高可用方面的战斗机 4. 多物理区域部署方案 良好的应用以及基础架构设计可以很好的提高系统的高可用性,甚至达到每年52分钟的最小宕机时间。如果需要继续提高商业引用的高可用,就需要考虑多物理区域部署的方案,该方案通过夸物理区域的部署,避免单区域灾难的冲击。 跨物理区域方案具体设计为: 设计两个物理区域部署应用,两个区...

handongcheng1的博客 1024

从项目开发到云端架构(19)

5.4 健壮Paas        对于健壮的paas则有更多的要求,还是秉承前面一个章节阐述的业务系统的架构要求,看看对于paas平台有那些要求: 1、应用托管和自动部署 自动部署是必须实现的功能,有了自动部署才可能真正的让应用部署包和中间件资源池进行彻底解耦和按需调度。在IaaS层是应用到物理服务器的解耦,而在PaaS层是应用和中间件资源池的解耦。要进行自动部署则开发的应用...

timeson 336

基于云平台的41种可复用的架构最佳实践 | 赠书活动

点击上方“程序猿技术大咖”,关注并选择“设为星标”回复“加群”获取入群讨论资格!感谢大家对公众号“程序猿技术大咖”的信任与支持,为回馈广大粉丝,今天为大家带来赠书福利,3本技术书籍包邮、免...

xcbeyond|疯狂源自梦想,技术成就辉煌 648

云端微服务架构下,如何高效运维?

一. 微服务架构面临的挑战 1 微服务核心价值:3S 2 微服务架构带来的运维挑战 1)单服务流量激增时扩容 2)调用链条变长,调用关系更加复杂 3)微服务拆分导致故障点增多 1)单服务变更性能影响如何评估? 2)性能瓶颈在各微服务间漂移,如何做好性能测试? 3)应对突发流量需求,扩容能否解决问题,如何扩容? 4)服务实例数量众多,如何收集信息,快速定位性能问题? 二. 华为云微服务性能保障解...

haloha1的博客 884
上一篇: UEWAF成功防御QPS超200万的CC攻击
下一篇: UCloud EPC平台上运行分子动力学GROMACS软件
MumuLab
博客等级 码龄9年 227粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值