网站架构模式
1.分层
将系统在横向维度上切分为几个部分,每个部分负责比较单一职责
应用层;服务层;数据层
2.分割
纵向切分
3.分布式
将不同模块部署在不同的服务器上,远程调用协同工作
缺点:必须通过网络,可能影响性能;保持数据一致性困难
常用分布式方案:分布式应用和服务; 分布式静态资源; 分布式数据和存储; 分布式计算
4.集群
多台服务器部署相同应用构成集群,通过负载均衡设备共同对外提供服务
5.缓存
将数据存放在距离计算最近的位置加快处理速度
CDN:内容分发网络,部署在距离用户最近的网络服务商
反向代理:缓存网站静态资源.直接返回给用户
本地缓存:本地缓存热点数据
分布式缓存:通过网络通信访问缓存数据
6.异步
一个业务操作分成多个阶段,每个阶段之间通过共享数据的方式异步执行
异步消息队列特点:提高系统可用性; 加快网站响应速度; 消除并发高峰
7.冗余
数据冗余备份
8.自动化
理想状态:一切都可以自动化
发布; 代码管理; 测试; 安全检测; 部署; 监控; 报警; 失效转移; 失效恢复; 降级; 分配资源
9.安全
好的设计绝对不是模仿,而是对问题深刻理解之上的创造与创新