面向开发人员的可扩展性和系统设计🔗

原价16.66美元

学习目标

了解构建 Web 应用程序所涉及的概念、组件和技术权衡。

了解微服务架构何时有意义及其含义。

掌握跨一系列不同技术堆栈实现微服务的艺术。

学习在面试环境中自信地处理和解决系统设计问题。

做出适合您需求的 AWS 架构和功能决策

路径内容
模块 1
Web 应用程序和软件架构
逐步了解构建 Web 应用程序所涉及的不同组件和概念。
1
软件架构的不同层次
介绍
单层应用程序
两层应用程序
三层应用程序
N 层应用程序
软件架构测验中的不同层次
2
网页架构
什么是网络架构?
客户端-服务器架构
客户
客户类型
服务器
客户端和服务器之间的通信
Web 架构测验 – 第 1 部分
什么是 REST API?
HTTP 推拉 – 简介
HTTP 拉取 – 使用 AJAX 进行轮询
HTTP推送
基于 HTTP 推送的技术
客户端渲染与服务器端渲染
Web 架构测验 – 第 2 部分
3
可扩展性
什么是可扩展性?
可扩展性的类型
哪种可扩展性方法适合我们的应用程序?
损害应用程序可扩展性的主要瓶颈
如何提高和测试我们应用程序的可扩展性?
可扩展性测验
4
高可用性
什么是高可用性?
系统故障的原因
实现高可用性 – 容错
冗余
复制
高可用集群
高可用性测验
5
负载均衡
负载均衡简介
了解 DNS – 第 1 部分
了解 DNS – 第 2 部分
DNS负载均衡
负载均衡方法
负载平衡测验
6
单体应用和微服务
什么是单体架构?
什么时候应该选择单体架构?
什么是微服务架构?
什么时候应该选择微服务架构?
整体架构和微服务 – 了解权衡 – 第 1 部分
整体架构和微服务 – 了解权衡 – 第 2 部分
整体架构和微服务测验
7
微前端
微前端简介
对微前端的需求
微前端集成
8
数据库
数据简介和类型
关系数据库
什么时候应该选择关系数据库?
NoSQL 数据库 – 简介
NoSQL 数据库的特点
何时选择 NoSQL 数据库?
NoSQL 比 SQL 性能更高吗?
数据库测验 – 第 1 部分
多语言持久性
多模型数据库
最终一致性
一致性强
CAP定理
数据库测验 – 第 2 部分
数据库类型
面向文档的数据库
图数据库
键值数据库
时间序列数据库
宽列数据库
数据库测验 – 第 3 部分
9
缓存
介绍
我需要缓存吗?
通过缓存降低应用程序部署成本
缓存策略
缓存测验
10
消息队列
消息队列简介
发布订阅模型
点对点模型
通知系统和带有消息队列的实时提要
使用消息队列处理并发请求
消息队列测验
11
流处理
介绍
数据摄取
获取数据的不同方式以及所涉及的挑战
数据摄取用例
数据管道
分布式数据处理
拉姆达架构
卡帕建筑
流处理测验
12
更多关于建筑的内容
事件驱动架构 – 第 1 部分
事件驱动架构 – 第 2 部分
网络钩子
无共享架构
六边形架构
有关架构测验的更多信息 – 第 1 部分
对等架构 – 第 1 部分
对等架构 – 第 2 部分
去中心化社交网络
联邦架构
有关架构测验的更多信息 – 第 2 部分
13
选择正确的技术
如何选择正确的服务器端技术?
选择技术堆栈时要记住的关键事项
14
实例探究
类似 Google 地图的基于 Web 的地图服务
棒球比赛门票预订门户网站
15
移动应用程序
介绍
设计移动应用程序之前
响应式接口
移动应用程序的类型 – 第 1 部分
移动应用程序的类型 – 第 2 部分
在本机应用程序和混合应用程序之间进行选择
渐进式网络应用程序
移动后端即服务
模块2
微服务原理和概念简介
深入探索微服务并了解何时使用它们。

1
微服务
介绍
优点
优势:持续交付
更多关于优势
权衡、优先考虑优势和水平
挑战
2
微观和宏观架构
介绍
领域驱动设计和限界上下文
战略设计和通用模式
架构决策
运营:微观还是宏观架构?
优先选择微架构!
组织方面
独立系统架构原则
变化
3
移民
介绍
迁移的原因
典型的迁移策略
替代策略
建设、运营和组织
变化
4
码头工人
介绍
用于微服务的 Docker:原因
Docker 基础知识
Dockerfile
Docker 组合
变化
5
技术微观架构
介绍
要求
反应式编程
春季启动
Spring Boot Starter Web 作为单一依赖项
适用于微服务的 Spring Boot:通信
Spring支持的其他通信API
Spring Boot 微服务:操作
适用于微服务的 Spring Boot:新的微服务和弹性

选择微服务?
变化
模块 3
微服务架构:实际实施
学习跨一系列常见技术堆栈实施微服务。
1
独立系统
介绍
定义
一个例子
SCS 和微服务
挑战
优点和变化
2
概念:前端集成
介绍
前端:整体式还是模块化?
选项
面向资源的客户端架构(ROCA)
乐家的好处
挑战
好处
变化
3
秘诀:链接和客户端集成
介绍
概述
集成到保障应用程序中
其他整合方法
例子
变化
实验
4
秘诀:使用边缘端包含 (ESI) 进行服务器端集成
介绍
例子

ESI 顺序与常见
变化
实验
5
概念:异步微服务
介绍
定义
数据复制、限界上下文和协议
活动
事件溯源
挑战:不一致和 CAP 定理
有关不一致的更多信息
其他挑战
优点和变化
6
食谱:消息传递和 Kafka
介绍
面向消息的中间件 (MOM)
卡夫卡的架构
有关 Kafka 架构的更多信息
更多关于 Kafka 架构的信息
与卡夫卡的活动
示例:简介
示例:数据模型
示例:技术结构和实时应用程序
示例:主题和分区
示例:测试和其他数据格式
变化与实验
7
菜谱:使用 Atom 和 REST 进行异步通信
介绍
原子格式
原子缓存
例子
变化
实验
8
概念:同步微服务
介绍
定义
例子
好处与挑战
变化
9
食谱:使用 Netflix 堆栈进行 REST
介绍
例子
尤里卡:服务发现
路由器:Zuul
负载平衡:功能区
弹性:Hystrix
弹性:Hystrix 实施
变化
实验
10
食谱:使用 Consul 和 Apache httpd 进行 REST
介绍
例子
服务发现
路由:Apache httpd
领事模板
领事和 Spring Boot
DNS 和注册器
变化
实验
11
概念:微服务平台
介绍
定义
变化
12
食谱:使用 Kubernetes 的 Docker 容器
介绍
Kubernetes 的示例
详细示例
Kubernetes 的其他功能
变化
实验
13
配方:使用 Cloud Foundry 的 PaaS
介绍
PaaS:定义
云铸造厂
Cloud Foundry 示例
变化与实验
无服务器
模块 4
Grokking 现代系统设计访谈
能够回答系统设计问题,在面试中取得好成绩。
预览
显示内容
1
介绍
现代系统设计概论
现代系统设计课程结构
2
系统设计面试
什么是系统设计面试?
如何为成功做好准备
如何表现良好
3
抽象
为什么抽象很重要?
网络抽象:远程过程调用
一致性模型的范围
故障模型的范围
4
非功能性系统特征
可用性
可靠性
可扩展性
可维护性
容错能力
5
粗略计算
正确看待粗略数字
资源估算示例
6
建筑模块
现代系统设计构建模块简介
7
域名系统
域名系统 (DNS) 简介
域名系统如何运作
8
负载均衡器
负载均衡器简介
全局和本地负载平衡
负载均衡器的高级详细信息
9
数据库
数据库简介
数据库类型
数据复制
数据分区
数据库的权衡
10
键值存储
系统设计:键值存储
键值存储的设计
确保可扩展性和可复制性
数据版本控制和实现可配置性
启用容错和故障检测
11
内容分发网络 (CDN)
系统设计:内容分发网络(CDN)
CDN 简介
CDN 的设计
CDN 深入研究:第 1 部分
CDN 深入研究:第 2 部分
CDN设计评估
CDN 设计测验
12
音序器
系统设计:定序器
唯一ID生成器的设计
具有因果关系的唯一ID
13
分布式监控
系统设计:分布式监控
分布式监控简介
监控系统的先决条件
14
监控服务器端错误
监控系统的设计
监控系统的详细设计
监控系统中的数据可视化
15
监控客户端错误
关注监控系统中的客户端错误
客户端监控系统的设计
16
分布式缓存
系统设计:分布式缓存
分布式缓存的背景
分布式缓存的高层设计
分布式缓存的详细设计
分布式缓存设计的评估
Memcached 与 Redis
17 号
分布式消息队列
系统设计:分布式消息队列
分布式消息队列的设计要求
分布式消息队列设计的考虑因素
分布式消息队列的设计:第 1 部分
分布式消息队列的设计:第 2 部分
分布式消息队列设计的评估
分布式消息队列设计测验
18
发布-订阅
系统设计:Pub-sub 抽象
发布-订阅简介
Pub-sub系统的设计
19
速率限制器
系统设计:速率限制器
速率限制器的设计要求
速率限制器的设计
速率限制器算法
关于速率限制器设计的测验
20
斑点商店
系统设计:Blob 存储
Blob Store 的设计要求
Blob 存储的设计
Blob 存储的设计注意事项
Blob Store 设计的评估
Blob 商店设计测验
21
分布式搜索
系统设计:分布式搜索
分布式搜索系统的设计要求
分布式搜索中的索引
分布式搜索的设计
扩展搜索和索引
分布式搜索设计的评估
22
分布式日志记录
系统设计:分布式日志记录
分布式日志记录简介
分布式日志服务的设计
23
分布式任务调度器
系统设计:分布式任务调度器
分布式任务调度器的设计要求
分布式任务调度器的设计
分布式任务调度器的设计考虑
分布式任务调度器设计的评估
24
分片计数器
系统设计:分片计数器
分片计数器的高层设计
分片计数器的详细设计
关于分片柜台设计的测验
25
结束构建模块讨论
结束构建模块的讨论
重新设计的系统设计方法
26
设计 YouTube
系统设计:YouTube
YouTube 的设计要求
YouTube 的设计
YouTube 设计评估
现实更为复杂
YouTube 设计测验
27
设计Quora
系统设计:Quora
Quora的设计要求
Quora的初步设计
Quora的最终设计
Quora 设计评价
28
设计谷歌地图
系统设计:谷歌地图
Google 地图的设计要求
谷歌地图的设计
Google 地图设计的挑战
谷歌地图的详细设计
Google 地图设计评估
29
设计近距离服务 / Yelp
系统设计:Yelp
Yelp 的设计要求
Yelp 的设计
Yelp 的设计考虑
Yelp 设计测验
30
设计优步
系统设计:优步
Uber 设计要求
Uber的高层设计
Uber的详细设计
Uber 设计中的支付服务和欺诈检测
Uber 设计评价
Uber 设计测验
31
设计推特
系统设计:推特
Twitter的设计要求
Twitter的高层设计
Twitter的详细设计
Twitter 的客户端负载均衡器
Twitter 设计测验
32
设计新闻源系统
系统设计:新闻源系统
新闻源系统的设计要求
新闻源系统的设计
新闻源系统设计的评估
33
设计Instagram
系统设计:Instagram
Instagram的设计要求
Instagram 的设计
Instagram的详细设计
Instagram 设计测验
34
设计 URL 缩短服务 / TinyURL
系统设计:TinyURL
TinyURL的设计要求
TinyURL的设计与部署
TinyURL 的编码器
TinyURL 设计评估
TinyURL 设计测验
35
设计一个网络爬虫
系统设计:网络爬虫
网络爬虫的设计要求
网络爬虫的设计
网络爬虫的设计改进
网络爬虫设计评价
36
设计WhatsApp
系统设计:WhatsApp
WhatsApp 的设计要求
WhatsApp的高层设计
WhatsApp的详细设计
WhatsApp 设计评价
WhatsApp 设计测验
37
设计提前输入建议
系统设计:Typeahead 建议系统
Typeahead建议系统的设计要求
Typeahead 建议系统的高层设计
存储前缀的数据结构
Typeahead 建议系统的详细设计
Typeahead 建议系统设计的评估
Typeahead 建议系统设计测验
38
设计协作文档编辑服务 / Google Docs
系统设计:谷歌文档
Google Docs 设计要求
Google 文档的设计
协同编辑中的并发
Google Docs 设计评估
39
惊人的失败
分布式系统故障简介
Facebook、WhatsApp、Instagram、Oculus 中断
AWS Kinesis 中断影响了许多组织
AWS 大范围中断
40
结束语
结论
模块 5
AWS 的优点:理清思路
了解如何使用 AWS 提供的最基本的服务(例如 DynamoDB、S3 和 EC2)来创建可靠且可扩展的系统。
预览
显示内容
1
第 1 部分:好的部分
默认启发式
数据库:DynamoDB
存储:S3
计算:EC2
计算:EC2 Auto Scaling
计算:拉姆达
网络和内容交付:ELB
网络和内容交付:Route 53
管理与治理:CloudFormation
应用程序集成:SQS
媒体服务:Kinesis
测验 – 基本 AWS 服务
2
第 2 部分:Bootstrap 指南
从头开始:基本 Web 应用程序
从头开始:手动 AWS 基础设施
基础设施即代码:创建 CloudFormation 堆栈
基础设施即代码:部署 CloudFormation 堆栈
自动部署:CodeBuild
自动部署:在 EC2 上安装 CodeDeploy 代理
自动部署:创建 CodePipeline
负载均衡:添加第二个 EC2 实例
负载均衡:添加应用程序负载均衡器
伸缩:添加 Auto Scaling 组
扩展:删除实例
生产:将堆栈名称添加到我们的应用程序中
生产:创建暂存堆栈
生产:创建生产堆栈
自定义域:向 Route 53 注册域
自定义域:将我们的域映射到负载均衡器
HTTPS:创建 TLS 证书
HTTPS:添加 HTTPS 端点
HTTPS:让应用程序使用 HTTPS
网络安全:设置 SSM 以进行 SSH 访问
网络安全:使用 NAT 网关添加私有子网
网络安全:在公共子网中启用 HTTPS 端口

路径覆盖

发表回复

后才能评论

尊敬的用户,您好!由于部分培训机构和留学生的举报,近期导致网站大量链接暂时失效。对此给您带来的不便,我们深表歉意。任何链接失效的资源,欢迎您添加侧边栏二维码随时反馈,我们将在48小时内为您提供新的网盘链接。如果您对此不便感到不满,您也可在48小时内申请无理由退款。感谢您的理解与支持!

Windows播放器推荐:Potplayer Potplayer 是免费的 Windows 播放器,支持双字幕和自动翻译功能。以下是操作指南: 挂载字幕 加载中文字幕:右击选择 字幕 -> 字幕设置,取消“只匹配文件名字幕”选项。可调整字幕颜色、位置和大小。 双字幕设置:右击 字幕 -> 选择字幕 -> 次字幕输出,设置主字幕和次字幕。 自动翻译 若可访问 Google 翻译服务,选择 字幕 -> 实时字幕翻译,勾选 总是使用 和 Google Translate,即可实时翻译英文字幕。 Potplayer 让观看更智能,学习体验升级。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可联络站长解决。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源