在许多系统中,随着用户群的增长,可扩展性成为发展的主要驱动力。有吸引力和高度实用的功能带来了成功,同时也带来了更多需要处理的请求和更多需要管理的数据。但是,当在轻负载下有意义的设计决策突然变成技术债务时,企业就会达到一个临界点。本书涵盖了可以快速、经济、高效地扩展应用程序的设计方法和技术。
作者Ian Gorton带领软件架构师和开发人员学习分布式系统设计的基本原则。你将探索可扩展解决方案的基本要素,包括复制、状态管理、负载均衡和缓存。本书还会重点介绍可扩展性对数据库、微服务和基于事件的流系统的影响。
通过学习本书,你将能够:
? 学习可扩展系统的基础知识:可扩展性的基本设计原则、成本、并发性和架构权衡。
? 设计可扩展的服务:深入探讨服务设计、缓存、异步消息传递、无服务器处理和微服务。
? 设计可扩展的数据系统:学习数据系统基础知识、NoSQL 数据库以及最终一致性与强一致性。
? 设计可扩展的流系统:探索流处理系统和可扩展的事件驱动处理机制。
展开