4.8 用户推荐指数
7.8
豆瓣评分
可以朗读
语音朗读
119千字
字数
2023-11-01
发行日期
展开全部
主编推荐语
一本关于系统设计的面试指南。
内容简介
系统设计面试被认为是所有技术面试中难度最大的面试,因为面试题的范围都非常广且模糊,其答案也是开放的,不存在标准答案或正确答案。
本书重点讨论了分布式系统中的常用组件和大型Web应用的系统架构,涵盖了几类常见的典型应用,包括聊天系统、视频流系统、文件存储系统(云盘)、支付系统等,旨在帮助读者掌握构建一个可扩展的系统所需的基础知识,为面试做好充分准备。
作为过来人,作者提出了应对面试题的“四步法”,即确定问题范围-总体设计-细节设计-总结,书中的案例基本上都是按照这个步骤进行解析的。这种独特的呈现方式,直接针对面试者在面试过程中可能遇到的问题,帮助他们厘清思路,有条不紊地作答。
通过本书,读者可以了解不同Web应用的系统设计方案的要点及采用的技术,据此查漏补缺,补齐自己知识体系中的短板,为面试成功增添更多的可能。而对于已经是架构师的读者而言,书中的案例将为他们提供新的思路和灵感,有助于他们在面试中更加从容地展现自己的设计思路和实践经验。
目录
- 版权信息
- 内容简介
- 译者序
- 前言
- 1 从0到100万用户的扩展
- 1.1 单服务器配置
- 1.2 数据库
- 1.3 纵向扩展vs.横向扩展
- 1.4 负载均衡器
- 1.5 数据库复制
- 1.6 缓存
- 1.7 内容分发网络
- 1.8 无状态网络层
- 1.9 数据中心
- 1.10 消息队列
- 1.11 记录日志、收集指标与自动化
- 1.12 数据库扩展
- 1.13 用户量达到甚至超过了100万
- 2 封底估算
- 2.1 2的幂
- 2.2 每个程序员都应该知道的操作耗时
- 2.3 可用性相关的数字
- 2.4 案例:估算推特的QPS和存储需求
- 2.5 小技巧
- 3 系统设计面试的框架
- 3.1 有效的系统设计面试的四个步骤
- 3.2 面试中每一步的时间分配
- 4 设计限流器
- 4.1 第一步:理解问题并确定设计的边界
- 4.2 第二步:提议高层级的设计并获得认同
- 4.3 第三步:设计继续深入
- 4.4 第四步:总结
- 5 设计一致性哈希系统
- 5.1 重新哈希的问题
- 5.2 一致性哈希
- 5.3 总结
- 6 设计键值存储系统
- 6.1 理解问题并确定设计的边界
- 6.2 单服务器的键值存储
- 6.3 分布式键值存储
- 6.4 总结
- 7 设计分布式系统中的唯一ID生成器
- 7.1 第一步:理解问题并确定设计的边界
- 7.2 第二步:提议高层级的设计并获得认同
- 7.3 第三步:设计继续深入
- 7.4 第四步:总结
- 8 设计URL缩短器
- 8.1 第一步:理解问题并确定设计的边界
- 8.2 第二步:提出高层级的设计并获得认同
- 8.3 第三步:设计继续深入
- 8.4 第四步:总结
- 9 设计网络爬虫
- 9.1 第一步:理解问题并确定设计的边界
- 9.2 第二步:提议高层级的设计并获得认同
- 9.3 第三步:设计继续深入
- 9.4 第四步:总结
- 10 设计通知系统
- 10.1 第一步:理解问题并确定设计的边界
- 10.2 第二步:提议高层级的设计并获得认同
- 10.3 第三步:设计继续深入
- 10.4 第四步:总结
- 11 设计news feed系统
- 11.1 第一步:理解问题并确定设计的边界
- 11.2 第二步:提议高层级的设计并获得认同
- 11.3 第三步:设计继续深入
- 11.4 第四步:总结
- 12 设计聊天系统
- 12.1 第一步:理解问题并确定设计的边界
- 12.2 第二步:提议高层级的设计并获得认同
- 12.3 第三步:设计继续深入
- 12.4 第四步:总结
- 13 设计搜索自动补全系统
- 13.1 第一步:理解问题并确定设计的边界
- 13.2 第二步:提议高层级的设计并获得认同
- 13.3 第三步:设计继续深入
- 13.4 第四步:总结
- 14 设计视频分享系统
- 14.1 第一步:理解问题并确定设计的边界
- 14.2 第二步:提议高层级的设计并获得认同
- 14.3 第三步:设计继续深入
- 14.4 第四步:总结
- 15 设计云盘
- 15.1 第一步:理解问题并确定设计的边界
- 15.2 第二步:提议高层级的设计并获得认同
- 15.3 第三步:设计继续深入
- 15.4 第四步:总结
- 16 设计支付系统
- 16.1 第一步:理解问题并确定设计的边界
- 16.2 第二步:提议高层级的设计并获得认同
- 16.3 第三步:设计继续深入
- 16.4 第四步:总结
- 17 设计指标监控和告警系统
- 17.1 第一步:理解问题并确定设计的边界
- 17.2 第二步:提议高层级的设计并获得认同
- 17.3 第三步:设计继续深入
- 17.4 第四步:总结
- 18 继续学习
- 后记
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。