随着业务的飞速发展,IT 软件架构也在不断更迭:从原先的单体架构,到集群架构,再到现在的分布式和微服务架构。系统地学习分布式架构对于技术人的成长可以说是非常关键。
今天给大家推荐这样一本书——《分布式架构原理与实践》。这本书获得 60 万阅读量,汇总了前人的经验与作者踩过的坑,让需要了解分布式架构的人可以在这书中获取所求。这同样也是一本企业管理者、架构师、研发人员和产品经理真正需要的技术实践书。
本书作者崔皓,拥有 20 多年从业经验的 IT 老兵。他见证了系统设计从单体架构到分布式架构的过程。
从 2016 年起,他开始关注分布式架构,并在自己的团队中使用。跟所有开发者的学习路径几乎相似,崔皓老师遇到过很多问题,也踩过不少坑。当业务处于飞速发展时,面对海量数据,系统需要更加强大的处理能力和扩展能力,而分布式架构设计则是未来的发展方向。2017 年,崔皓老师开始在博客上将工作经验与学习所得进行汇总,至今发表 100 多篇技术博文,拥有个人专栏“秒杀高并发白话实战”。
2020 年初,他发表的文章字数已经超过 40 万,此举旨在将多年经验汇编成书并分享给更多的人。
中国人讲究“观、为、得”,“观”就是看别人做事,“为”就是自己尝试用学到的东西做事,之后才能有所“得”。
写书亦如此,“观”就是学习的过程,从前辈那里找到灵感;“为”就是通过实践,将内容和自身经验结合在一起,最终形成文字,这样才能将知识转化为“得”。
汇总前人的经验与自己踩过的坑,并分享给需要的人,就是这本书的写作目的。
内容简介
本书从软件结构的发展历史入手,通过一个简单的例子,描述了分布式架构的特性和存在的问题,并围绕这些问题展开了分析和实践。
书中从为什么、是什么、怎么办这三个方面,分别讲解了分布式应用服务的拆分、分布式调用、分布式协同、分布式计算、分布式存储、分布式资源管理和调度、高性能与可用性以及指标与监控等内容,基本涵盖了分布式技术的要点。
读者既可以按照逻辑联系从前往后看,也可以只阅读感兴趣的章节。
一本真正覆盖全职业类型的
分布式架构书
作者在职业生涯中,担任过程序员、技术组长、架构师、业务分析师、项目经理、技术经理等不同角色,深知技术知识并非某一类人的专属物品。
所以本书对技术的核心要点进行抽象和深化,不仅让拥有专业背景的程序员、架构师看懂,也能让相关专业的业务分析师、项目管理者弄明白。
基于这个理念,本书设置了“为什么”“是什么”和“怎么办”这三方面,分别对应到了思路、机制和实践。
“为什么”指明了使用某种技术的原因,通常指出具体的技术痛点,并针对性提出解决方案,从而引出对应的技术,适合程序员、技术组长、架构师、业务分析师、项目管理者阅读。
“是什么”针对技术的核心架构展开,分析其原理和结构,让大家从内部了解技术架构,为后面的“怎么办”做铺垫,适合技术组长、架构师阅读。
他们需要对技术核心了如指掌,这样才能在架构出现问题的时候,直指问题的根本,站在实现机制的高度看待整个系统架构。
“怎么办”根据技术架构的核心概念,形成最佳实践,程序员、技术组长、架构师、项目管理者可以了解具体应用的落地和工具、架构的选择。
为什么要写这本书
随着业务的飞速发展,IT软件架构也在不断更迭。从原先的单体架构到集群,以及现在分布式的架构。每一步的发展都在解决业务的复杂性、高并发、可用性等问题。
如果关注分布式架构,就会发现,它具有分布性、自治性、并行性、全局性等特性,这些特性会带来了一系列问题,例如应用服务如何拆分、服务之间如何通信、服务之间如何协同、分配资源如何计算等。
本书讲解了分布式架构的特征及其存在的问题,书中沿着这些问题是什么、为什么存在这些问题、如何解决这些问题的思路展开讲解。
首先,业务引领技术,所以需要将业务转化、拆分成应用服务,让这些应用服务分布在不同的进程、容器、服务器以及网络结点,然后要考虑应用服务之间的通信和协同问题,有了通信和协同,这些应用服务就能够更好地工作(计算),并将计算结果存储下来。
接下来,需要将这些计算、存储资源进行管理和调度,做到资源与请求相匹配。同时,分布式系统解决了大流量、高并发的问题,但是可用性也是不容忽视的,因此需要将过程进行指标度量和监控。
最后,再用一个秒杀系统的例子将上面的几个问题串起来,做总结。
阅读指南
拿到书后,可以先阅读第1章,其中介绍了分布式技术的发展历程以及全书的叙述逻辑。
本书按照“拆分→调用→协同→计算→存储→调度→高性能与可用性→指标与监控”这样的逻辑主线展开描述。
虽然章节之间有连贯性,但是也可以分开阅读,并且不会影响阅读体验。
特色
在阅读技术书时,可能会出现记不住、记不清的情况,但是一定会对书中的图记得非常清晰。
因此,作者结合自身读书习惯,将系统架构以及数据流程绘制成 300 多张图片,一图胜千言,以图片的形式展示,方便读者阅读、理解、记忆。
作者简介
崔皓,资深架构师,10 年分布式架构经验。曾任惠普技术专家。
乐于分享,撰写了很多热门技术文章,阅读量超过 60 万。
大佬推荐
我和崔皓从在惠普共事开始,已经认识很多年了。他是一个做事情非常认真、仔细的人。
后来有段时间我们又在同一家创业公司共事,他负责管理产品研发团队,只用一年的时间,他就把一个初创公司的产品研发团队从零打造成了一个优秀的团队,各项产品研发指标都超过了比较基准,这让我再次对他肃然起敬。
本书深入浅出地讲解了架构设计的演进历程和各个关键模块,可以说是对作者多年工作经验的总结。无论是对刚进入架构设计师行业的开发人员,还是对资深的架构设计师而言,都有很高的参考价值。
在这本书中,我还看到了很多他在项目实践中的经验总结和分享,是一本难得的理论结合实践的书,值得一看。如果能有幸再听到作者分享在美国的研发经历,将让我受益匪浅。——吴晖,上海联蔚利歌信息科技有限公司(金融科技行业)运营总监,前 SAP 大中华区 OEM 售前部门负责人,前惠普云计算交付中国区负责人
本书的写作历时 3 年,崔皓把过去多年在研究和应用分布式系统过程中的经验整理到了其中,同时还对技术背后的原理做了详尽剖析,能够让读者解决在工作中遇到的实际问题,而不仅是纸上谈兵。本书通俗易懂、操作性强,对于初学者、高级程序员、架构师都有很好的指导意义。在实际项目中,到底是如何有效应用分布式系统的?这本书会给你答案。——冯是聪,百炼智能 CEO
老崔是我 10 年的同事,不管是在中国惠普研发中心还是在互联网创业期间,他一直以资深架构师的角色奋战在大型复杂项目的一线,对分布式架构有着相当深入的理解和丰富的实践经验,擅长将技术理论落地,特别是在设计和把控高可用、高并发系统方面。
随着国内互联网产业在最近 15 年的飞速发展,从底层的分布式存储、分布式数据库,到以微服务形式呈现的分布式计算、物联网场景下的边缘计算,再到区块链技术以及人工智能领域的联邦学习,无一不是分布式架构理念和相关技术在各行各业的广泛应用和落地实践。
本书从应用和实践的角度系统讲解了分布式架构的相关技术和组件在实际场景中的应用,能帮助读者全面梳理和了解分布式架构的原理及知识体系,以期“授之以渔”。——胡浩文,神州数码研发中心技术总监,前惠普交付中心研发经理