从CRUD的程序员,到系统的架构师,进阶推荐读这几本书。架构师书单分为两部分,第一部分是关于系统架构的方法论,包括领域驱动设计,微服务,整洁架构,第二部分介绍各大互联网大公司是如何做系统架构落地实践。
程序员书单会做成一个系列,会推荐面试,职业规划,软技能等不同主题的书单,同时我会在博客和公众号「架构进化论」中,对书单中推荐的好书做解读,欢迎持续关注。
一、方法论
《领域驱动设计》
这本书可以帮助我们理解用代码呈现真实世界的重要性,并且告诉我们如何更好地进行建模。
简而言之,这本书提供了深入的架构洞察力,并帮助你在不断变化的环境中创建强大的系统,最重要的是,Eric Evans用开发人员可以理解的语言来描述,非常难得。
书中给出了领域驱动设计的系统化方法,并将人们普遍接受的一些实践综合到一起,融入了作者的见解和经验,展现了一些可扩展的设计新实践、已验证过的技术以及便于应对复杂领域的软件项目开发的基本原则。
《架构整洁之道》
来自传奇人物Robert C. Martin的实用软件架构解决方案,作者还有另外一本非常经典的书《代码整洁之道》。
干净的架构对于每一个软件架构师、系统分析师、系统设计师和软件管理人员来说都是必不可少的,想要成为软件架构师,这本书一定是必不可少的。
《微服务设计》
这是一本了解现代分布式软件设计和体系结构的好书,特别是微服务,如Uber,Facebook,NetFlix等的实践。
本书全面介绍了微服务的建模、集成、测试、部署和监控,通过一个虚构的公司讲解了如何建立微服务架构。主要内容包括认识微服务在保证系统设计与组织目标统一上的重要性,学会把服务集成到已有系统中,采用递增手段拆分单块大型应用,通过持续集成部署微服务等。
作者和译者都来自ThoughtWorks,值得信赖,除了系统化地论述了微服务的方方面面以外,书中推荐的技术博客、工具软件等对增强感性认识都很有帮助。对关于COTS的集成,作者提出的在自己可控的平台进行定制化的核心思想尤其值得牢记。
《架构即未来:现代企业可扩展的Web架构、流程和组织》
作者还有另外一本《架构真经》,一起推荐。
本书汇聚了作者从eBay、VISA、Salesforce.com到Apple超过30年的丰富经验,全面阐释了经过验证的信息技术扩展方法,对所需要掌握的产品和服务的平滑扩展做了详尽的论述。
任何一个持续成长的公司最终都需要解决系统、组织和流程的扩展性问题,作者详尽地介绍了影响扩展性的各个方面,包括架构、过程、组织和技术。
阅读本书,可以学习到以最大化敏捷性和扩展性来优化组织机构的新策略,以及对云计算(IaaS/PaaS)、NoSQL、DevOps和业务指标等的新见解。利用其中的工具和建议,可以系统化地清除扩展性道路上的障碍,更好的开展技术和业务。
二、架构落地实践
关注公众号「架构进化论」,回复"书单",可以获得部分图书的电子版。
《淘宝技术这十年》
生动形象的介绍了淘宝从小到大的技术发展历程,是企业架构发展的一个缩影,对思考技术发展有较好的帮助。
《淘宝技术这十年》从工程师的角度讲述淘宝这个超大规模互联网系统的成长历程,及其所有主动和被动的技术变革的前因后果。书中有幕后故事、产品经验、架构演进、技术启蒙,也有大牛成长、业内八卦、失败案例、励志故事。《淘宝技术这十年》文风流畅,有技术人员特有的幽默感;内容积极正面,有现场感,全部是作者亲身经历。
作者子柳,创办“淘宝技术大学”,培养内外部工程师众多,人称“校长“,微博上也有他很多关于互联网的思考。
《分布式服务框架:原理与实践》
这本书对分布式服务框架做了拆解,依托工作实践,从分布式服务框架的架构设计原理到实践经验总结,涵盖了服务化架构演进、订阅发布、路由策略、集群容错和服务治理等多个专题,全方位剖析服务框架的设计原则和原理,结合大量实践案例与读者分享作者对分布式服务框架设计和运维的体会。同时,对基于Docker部署微服务以及基于微服务架构开发、部署和运维业务系统进行了详细介绍。
作者具有丰富的分布式服务框架、平台中间件的架构设计和实践经验,主导设计的华为分布式服务框架已经在全球数十个国家成功商用。
《大型网站技术架构:核心原理与案例分析》
一本国内不错的关于软件架构实践的书,销量和评价都挺好。这本书通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,呈现了一幅包括技术选型、架构设计、性能优化、Web 安全、系统发布、运维监控等在内的大型网站开发全景视图。
《大型网站系统与Java中间件实践》
阿里系技术图书,对分布式系统的演进做了较好的介绍,围绕大型网站和支撑大型网站架构的 Java 中间件的实践展开介绍。
本书从分布式系统的知识切入,让读者对分布式系统有基本的了解;然后介绍大型网站随着数据量、访问量增长而发生的架构变迁;接着讲述构建 Java 中间件的相关知识;最后介绍支撑大型网站架构的 Java 中间件系统的设计和实践。
通过本书可以了解大型网站架构变迁过程中的较为通用的问题和解法,并了解构建支撑大型网站的 Java 中间件的实践经验。
《企业IT架构转型之道:阿里巴巴中台战略思想与架构实战》
看这本书,帮助你了解阿里的中台设计,也就是阿里巴巴的共享服务理念以及企业级互联网架构建设的思路。
本书从阿里巴巴启动中台战略说起,详细阐述了共享服务理念给企业业务发展带来的业务价值。接着会分享阿里巴巴在建设共享服务体系时如何进行技术框架的选择,哪些重要的技术平台支撑起了共享服务体系,这也是迄今为止对阿里巴巴集团中间件体系对外最全面系统的介绍。除了技术层面之外,本书还分享了阿里巴巴内部的一些经验和实践,如组织的架构和体制如何更好地支持共享服务体系的持续发展。
《尽在双11:阿里巴巴技术演进与超越》
这本书是阿里巴巴集团双11技术团队出品,集合了各个事业部对双十一的复盘,全面阐述双11八年以来在技术和商业上演进和创新历程的书籍。
内容涵盖在双11背景下阿里技术架构八年来的演进,如何确保稳定性这条双 11 生命线的安全和可靠,技术和商业交织发展的历程,无线和互动的持续创新与突破,以及对商家的赋能和生态的促进与繁荣。
推荐做业务架构的工程师阅读,特别是双十一全链路压测,稳定性保障的篇幅。