展开全部

主编推荐语

一本关于系统设计的面试指南。

内容简介

系统设计面试被认为是所有技术面试中难度最大的面试,因为面试题的范围都非常广且模糊,其答案也是开放的,不存在标准答案或正确答案。

本书重点讨论了分布式系统中的常用组件和大型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 继续学习
  • 后记
展开全部

评分及书评

4.8
4个评分
  • 用户头像
    给这本书评了
    5.0

    一些材料可以帮你理解不同公司产品的系统架构背后的一般设计思想。以下是一些经典的博客文章,建议你仔细阅读。・Facebook Timeline:Brought to You by the Power of DenormalizationScale at FacebookBuilding Timeline:Scaling Up to Hold Your Life StoryErlang at Facebook (Facebook Chat)・Facebook ChatFinding a Needle in Haystack:Facebook's Photo StorageServing Facebook Multifeed:Efficiency,Performance Gains through RedesignScaling Memcache at FacebookTAO:Facebook's Distributed Data Store for the Social GraphAmazon ArchitectureDynamo:Amazon's Highly Available Key-value StoreA 360 Degree View of the Entire Netflix StackIt's All About Testing:the Netflix Experimentation PlatformNetflix Recommendations:Beyond the 5 stars (Part 1)・Netflix Recommendations:Beyond the 5 stars (Part 2)・Google ArchitectureThe Google File System (Google Docs)・Differential Synchronization (Google Docs)・YouTube ArchitectureSeattle Conference on Scalability:YouTube ScalabilityBigtable:A Distributed Storage System for Structured DataInstagram Architecture:14 Million Users,Terabytes of Photos,100s of Instances,Dozens of TechnologiesThe Architecture Twitter Uses to Deal with 150M Active UsersScaling Twitter:Making Twitter 10000 Percent FasterAnnouncing SnowflakeTimelines at ScaleHow Uber Scales Their Real-Time Market PlatformScaling PinterestPinterest Architecture UpdateA Brief History of Scaling LinkedInFlickr ArchitectureHow We've Scaled DropboxThe WhatsApp Architecture Facebook Bought for$19 Billion 如果你将要参加一家公司的面试,最好先阅读一下它的工程博客,了解该公司采用的技术和系统架构。此外,工程博客也提供了关于一些特定领域的宝贵见解,定期阅读其中的文章可以帮助我们成为更好的工程师。

      转发
      评论

    出版方

    电子工业出版社

    电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。