web网站架构设计

1.高性能设计:

  • 前端高性能设计主要是:加快用户实际感受到前端页面展示的时间。主要受网络延时和资源加载因素影响。
  • 后端高性能设计:
    1) 使用缓存加快处理时间,降低后端运算负载。
    2) 服务器集群化,前置负载均衡,提高计算性能和并发能力。

2.高可用设计:

  • 后端服务器至少2台,前置一台负载均衡器,实现应用服务高可用。
  • 分布式数据存储,实现数据高可用。

3.伸缩性设计:
基于机器的集群的进行可伸缩性设计,或者基于一台机器的硬件配置进行伸缩。

基于集群的进行可伸缩性设计:

- 横切:单一功能按层次划分,例如购物功能,可以划分为:
|ui层|
|业务逻辑层|
|公共服务层|
|数据存储层|
每一层都可以独立实现可伸缩。

- 纵切:按业务种类垂直划分,物理隔离服务。比如:
按|用户管理|购物|支付|划分,而且|购物|业务按业务范围
还可以向下划分为:
|百货|电子产品|生鲜|

这样纵切得到的|购物-百货|业务,按照购物功能的横切划分,拥有自己的一套执行环境,即为:
ui静态服务器,
业务逻辑服务器集群,
数据存储服务器、集群。
而公共服务层可以抽象为一个业务,具有自己的集群。