资源截图
MP4 |视频:h264,1920×1080 |音频:AAC,44.1 KHz,2 Ch
语言:英语 |时长:9小时36米
你将学到什么
- 了解什么是系统设计以及它与编码、架构和基础设施有何不同
- 在设计系统之前确定功能和非功能需求
- 估算用户、流量、负载、每秒请求数、延迟、吞吐量和容量
- 分析可扩展性选项、瓶颈、热点、性能限制、成本和复杂性
- 设计清晰的服务边界、API、组件和通信流
- 选择同步和异步通信模式
- 了解数据存储、缓存、队列、后台处理、索引和读取优化
- 针对故障、重试、幂等性、可用性、可靠性和弹性设计系统
要求
- 对软件开发概念的基本了解
- 网络应用程序工作原理的基本知识
- 熟悉 API、数据库和后端系统会很有帮助,但不是必需的
- 无需高级系统设计经验
- 不需要特定的编程语言
- 愿意考虑权衡、限制、可扩展性、可靠性和现实世界的架构决策
描述
系统设计是现代软件开发人员、架构师、技术主管和工程经理最重要的技能之一。
当您需要构建必须处理真实用户、真实流量、真实故障、不断变化的需求、安全风险、成本限制和长期维护的系统时,仅编写代码是不够的。
本课程是为那些想要以实用的方式了解系统设计的人而设计的,没有不必要的学术复杂性,也没有盲目复制大型技术公司的架构。
您将学习如何将技术概念与实际工程决策联系起来。
您将了解如何根据以下内容评估选项,而不仅仅是记住模式:
- 业务需求
- 技术限制
- 预期规模
- 性能需求
- 可靠性目标
- 安全和隐私风险
- 成本和复杂性
- 团队能力
- 长期可维护性
本课程适合谁
- 除了编写代码之外还希望了解系统设计的软件开发人员
- 后端工程师准备系统设计面试
- 需要做出更好架构决策的技术主管
- 需要实用结构来设计和解释系统的软件架构师
- 想要了解可扩展性、可靠性、风险和权衡的工程经理
- 想要了解设计如何影响生产系统的质量保证、开发运营、安全和支持专业人员
- 想要了解需求如何影响架构的产品经理和业务分析师
- 任何想要学习实用软件架构、可扩展性、可靠性和系统设计基础知识的人


评分及评论
暂无评分
来评个分数吧