Get Started. It's Free
or sign up with your email address
系统设计 by Mind Map: 系统设计

1. SNAKE方法

1.1. Scenario

1.1.1. case/interface

1.2. Necessary

1.2.1. constrain/hypothesis

1.3. Application

1.3.1. service/algorithm

1.4. Kilibit

1.4.1. data

1.5. Evolve

1.5.1. User

1.5.1.1. Better: constrains

1.5.1.2. Boarder: New use cases

1.5.1.3. Deeper: more details

1.5.2. Server

1.5.2.1. Performance

1.5.2.2. Scalability

1.5.2.3. Robustness

2. 3-tier architecture

2.1. 界面层(User Interface layer)

2.2. 业务逻辑层(Business Logic Layer)

2.3. 数据访问层(Data access layer)

3. 大型系统设计架构

3.1. 前端界面/用户访问层

3.2. 负载均衡层

3.3. 缓存加速层

3.4. Web应用/业务逻辑层

3.5. 数据库访问/应用层

4. Web前端应用优化

4.1. 浏览器访问优化

4.1.1. 减少http请求

4.1.2. 使用浏览器缓存

4.1.3. 启用压缩

4.1.4. CSS放页面最上面,JS放页面最下面

4.1.5. 减少Cookie传输

4.2. CDN加速

4.2.1. 本质

4.2.1.1. 仍是一个缓存

4.2.1.2. 将数据缓存在离用户最近的地方,便于用户以最快速度获取数据

4.2.2. 注意点

4.2.2.1. 只将访问频度很高的热点内容缓存在cdn

4.2.3. 加速

4.2.3.1. 加快用户访问速度,减少数据中心负载

4.3. 反向代理

4.3.1. 位置

4.3.1.1. 位于网站机房,代理网站Web服务器接受Http请求

4.3.2. 功能

4.3.2.1. 保护网站安全

4.3.2.2. 通过配置缓存加速Web请求

4.3.2.3. 实现负载均衡

4.4. 负载均衡

4.4.1. 技术

4.4.1.1. HTTP重定向负载均衡

4.4.1.2. DNS域名解析负载均衡

4.4.1.3. 反向代理负载均衡

4.4.1.4. IP负载均衡

4.4.1.5. 数据链路层负载均衡

4.4.2. 负载载均衡算法

4.4.2.1. 轮询

4.4.2.2. 加权轮询

4.4.2.3. 随机

4.4.2.4. 最少连接

4.4.2.5. 源地址散列

4.4.3. 实现方式

4.4.3.1. 软件级负载均衡

4.4.3.1.1. 解决方案

4.4.3.1.2. 优点

4.4.3.1.3. 缺点

4.4.3.2. 硬件级负载均衡

4.4.3.2.1. 解决方案

4.4.3.2.2. 优点

4.4.3.2.3. 缺点

4.5. 缓存

4.5.1. 按Location分类

4.5.1.1. 用户层/请求层节点缓存

4.5.1.2. 服务器端缓存

4.5.1.2.1. 全局缓存

4.5.1.2.2. 分布式缓存

4.5.2. 按请求方式分类

4.5.2.1. 片段缓存

4.5.2.2. 数据查询缓存