|
推荐一个开源的学习文档集,系统设计入门。
地址:https://github.com/donnemartin/system-design-primer/blob/master/README-zh-Hans.md
这个教程非常详细,尤其是图画的非常清晰,比如
目的
学习如何设计大型系统。
为系统设计的面试做准备。
学习如何设计大型系统
学习如何设计可扩展的系统将会有助于你成为一个更好的工程师。
系统设计是一个很宽泛的话题。在互联网上,关于系统设计原则的资源也是多如牛毛。
这个仓库就是这些资源的组织收集,它可以帮助你学习如何构建可扩展的系统。
从开源社区学习
这是一个不断更新的开源项目的初期的版本。
欢迎贡献!
为系统设计的面试做准备
在很多科技公司中,除了代码面试,系统设计也是技术面试过程中的一个必要环节。
内容包括:
面试准备的其他主题:
学习指引如何处理一个系统设计的面试题系统设计的面试题,含解答面向对象设计的面试题,含解答其它的系统设计面试题
- 系统设计主题:从这里开始第一步:回顾可扩展性的视频讲座
- 第二步:回顾可扩展性的文章
- 接下来的步骤性能与拓展性延迟与吞吐量
- 可用性与一致性CAP 理论CP - 一致性和分区容错性
- AP - 可用性和分区容错性
- 一致模式弱一致性
- 最终一致性
- 强一致性
- 可用模式故障切换
- 复制域名系统
- CDNCDN 推送
- CDN 拉取
- 负载均衡器工作到备用切换(Active-passive)
- 双工作切换(Active-active)
- 四层负载均衡
- 七层负载均衡
- 水平扩展
- 反向代理(web 服务器)负载均衡与反向代理
- 应用层微服务
- 服务发现
- 数据库关系型数据库管理系统(RDBMS)Master-slave 复制集
- Master-master 复制集
- 联合
- 分片
- 非规范化
- SQL 调优
- NoSQLKey-value 存储
- 文档存储
- 宽列存储
- 图数据库
- SQL 还是 NoSQL
- 缓存客户端缓存
- CDN 缓存
- Web 服务器缓存
- 数据库缓存
- 应用缓存
- 数据库查询级别的缓存
- 对象级别的缓存
- 何时更新缓存缓存模式
- 直写模式
- 回写模式
- 刷新
- 异步消息队列
- 任务队列
- 背压机制
- 通讯传输控制协议(TCP)
- 用户数据报协议(UDP)
- 远程控制调用协议(RPC)
- 表述性状态转移(REST)安全
- 附录2 的次方表
- 每个程序员都应该知道的延迟数
- 其它的系统设计面试题
- 真实架构
- 公司的系统架构
- 公司工程博客正在完善中致谢联系方式许可
我感觉有的看了
声明:以上内容来源于网络,如有侵权请联系我们(123@shiyan.com)删除! |
|