所有Web架构都有自己优缺点和局限性,没绝对完美只有相对较优。选择适合自己项目的架构才是最稳妥的做法,下文列出多种常用示例供参考。
点对点
最实用的Web架构。没扩展性和安全性可谈。做法是把HTTP服务器和数据库服务器放在同一台服务器上。
优点:省钱、简单、适合项目初期;
缺点:(单点故障)任何软件及硬件的单点故障都会导致系统宕机。
独立数据库
和上一种差不多,现实中能见到的就是虚拟主机。程序存在一个地方,数据库在另一地方。(友情提示:XX宝上的香港虚拟主机,实质还是在同一台服务器。只是文件夹不同)
优点:省钱、适合项目初期;
缺点:(单点故障)任何软件及硬件的单点故障都会导致系统宕机。
负载均衡
由于项目和流量的增大,普通的网站会发展出双web服务器或者N个web服务器。通过允许多个冗余服务器来处理大负载,来降低高流量,高并发导致的宕机风险。
优点:解决大流量,高并发的冲击,适合项目起步;
缺点:(单点故障)数据库的单点故障会导致系统宕机,数据库一断满盘皆输。
双机或集群
有了数据库集群后,终于彻底告别了单点故障。对一个成熟的系统这是最简单的配置。
优点:项目正常稳定运营,完全不受单一因数影响整个系统;
缺点:不同类型数据库整合困难重重。(关系型和非关系型整合是考虑的重点)
多应用跨平台
中大型企业都会遇到多应用、跨平台、第三方系统接入等复杂场景。这时需要拆分解决方案,来降低子系统的复杂性。并引入应用程序独立服务器。建立二级的防火墙,来达到保护外网和内网作用。保持系统稳定性。
优点:体验好,速度快,功能强大,有安全性可言;
缺点:费用开始呵呵,配置复杂,资源出现浪费,运维更麻烦。
云平台
云平台巨头门的抢占的市场,用户的红利期已过,价格已经回归到正常。推广期性价比最高。
优缺点:资源虚拟化,配置灵活化,功能模块化,负载多元化,安全烧钱化。
新架构了解下
推荐阅读 serverless架构,详情参考本号以前文章。
閱讀更多 大大里 的文章