大型网站核心架构中的"高可用性"设计方法

🌙
手机阅读
本文目录结构

大型网站通常都会有上万台服务器,每天都必定有一些服务器器宕机;

高可用的目标

高可用的目标:当服务器宕机的时候,服务或应用依然可用!假设系统中任何以太或者多台服务器宕机时,以及出现各种不可预测的问题时,系统整体是否依然可用

高可用的前提:必然出现服务器宕机

高可用的主要手段

高可用的主要手段是冗余,任何以太服务器宕机都不会影响应用的整体可用,也不会导致数据丢失

  • 应用部署在多台服务器上同时提供访问
  • 数据存储在多台服务器上相互备份

对应用服务器而言

多台应用服务器通过负载均衡设备组成一个集群共同对外提供服务器

任何以太服务器宕机,只需要把请求切换到其它服务器可实现应用的高可用;

注意:应用服务器上不能保存请求的会话信息,否则服务器宕机,会话丢失,即使将请求转发到其他服务器也无法完成业务处理了

对储存服务器而言

需要对数据库进行实时备份,当服务器宕机时需要把数据访问转移到可用的服务器上,并进行数据恢复以保证继续有服务器宕机的时候数据依然可用;

开发过程的质量保证

  • 预发布验证
  • 自动化测试
  • 自动化发布
  • 灰度测试

减少将故障引入线上环境的可能,避免故障范围扩大

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了