【可伸缩性】——增加服务器。
-
- 架构伸缩性伸缩性设计
-
- 按照不同功能分层分割
-
- 业务处理流程横切分层
-
- 应用
- 服务
- 数据
- 将不同的业务模块纵切分割。切分成不能再分的最小粒度。
-
- 网站前台
- 卖家后台
- 论坛
- 商品详情
- 服务器集群伸缩性设计
-
- 分成最小粒度之后一台服务器还是不够,那么就集群N多个服务器支持一个小服务。看他这回行不行。既然集群那就要上负载均衡服务器啊
- HTTP重定向负载均衡
-
- 功能:把用户的HTTP请求计算出真实对应的服务器,然后写入http重定向中。响应代码302不是404哦 哈哈。然后浏览器get之后继续访问真实的web服务器。
- 优点:实现简单
- 缺点:两次访问,性能差。搜索引擎会认为是seo作弊。反而惩罚。——淘宝排名和百度都是。
- DNS域名解析负载均衡
-
- 根据负载均衡算法计算一个IP返回
- 反向代理服务器:
-
- 缓存静态资源。
- IP负载均衡
- 数据链路负载均衡
- 【负载均衡算法】
-
- 根据负载均衡算法和web服务器列表计算得到一台真实的服务器地址。把这个请求发送到对应的服务器上。
- 轮询:每个请求按顺序依次分发到各个服务器。大家均衡处理
- 加权轮询:根据硬件的好坏划分。高性能的服务器多处理些,多承担啊。就是加权分发。
- 随机:随机分发
- 最少连接:记录每个服务器连接数,每次都分发到当前此刻连接最少的服务器上。
- 源地址散列:每个IP对应一个服务器。也就是会话绑定。
- 分布式缓存集群伸缩性设计
-
- 数据存储伸缩性设计
-
- 关系型数据库集群伸缩性:主从复制实现读写分离。写入在服务器主,然后数据同步复制到从服务器。
- NoSQL数据库伸缩性: