内容简介
写书一般更关注某技术是什么,怎么做,而忽略了为什么,其实应该把为什么使用某种技术放在第一的位置。只有知道了为什么,心中才会有目标,才懂得使用这门技术的意义。回到本书,要想把为什么说清楚,就需要对分布式技术的历史进行归纳总结,看看架构是如何一步步演变成分布式架构的。在我看来这个行进过程是自然而然、水到渠成的。我会在第1 章介绍分布式架构的发展历史,同时告诉大家本书的逻辑主线,然后顺着这个逻辑主线展开介绍。
为了应对请求的高并发和业务的复杂性,需要对应用服务进行合理拆分,使之从原来的大而集中变成小而分散。想让这些分散的服务合作完成计算任务,就需要解决它们之间的通信与协同问题。和服务一样,负责存储的数据库也会遇到分散的情况,因此同样要考虑分散存储。如果说所有的服务、数据库都需要资源作为支撑,那么对资源的管理和调度也是必不可少的。此外,软件系统上线以后,还需要对关键指标进行监控。
根据上面的逻辑主线,可以得到本书的主要内容:分布式应用服务的拆分、分布式调用、分布式协同、分布式计算、分布式存储、分布式资源管理和调度、高性能与可用性以及指标与监控等。这些内容各成一章,基本涵盖了分布式技术的要点,读者既可以按照逻辑联系从前往后看,也可以只阅读感兴趣的章节。
本书每章内容都按照“为什么”“是什么”“怎么办”三方面展开。
- “为什么”指明了使用某种技术的原因,通常会指出具体的技术痛点,然后围绕这个痛点提出解决方案,从而引出对应的技术。
- “是什么”针对技术的核心架构展开,分析其原理和结构,让大家从内部了解技术架构,为后面的“怎么办”做铺垫。
- “怎么办”部分主要是根据技术架构的核心概念,形成最佳实践。本书会选择业内经典或者流行的技术架构和方案给大家做参考