一、网站可用性度量和考核

1、网站可用性度量

网站不可用时间(故障时间) = 故障修复时间点 - 故障发现(报告)时间点
网站年度可用性指标 = (1-网站不可用时间/年度总时间)* 100%

业界通常用多少个9来衡量网站的可用性。对大多数网站,两个9(99%)是基本可用,3个9是较高可用,4个9是具有自动恢复能力的高可用,5个9是极高可用性。

2、网站可用性考核

网站故障分类权重表示例

分类 描述 权重
事故级故障 严重故障,网站整体不可用 100
A类故障 网站发昂文不顺畅或核心功能不可用 20
B类故障 非核心功能不可用,或核心功能少数用户不可用 5
C类故障 以上故障以外的其他故障 1

故障分计算公式为:
故障分 = 故障时间(分钟) * 故障权重

二、高可用的网站架构

应用分层:应用层、服务层、数据层

三、高可用的应用

应用层主要处理网站应用的业务逻辑,有时也被称为业务逻辑层,应用的一个显著特点是:无状态性。所谓无状态的应用是指应用服务器不保存业务的上下文信息,而仅根据每次请求提交的数据进行相应的业务逻辑处理,多个服务实例(服务器)之间完全对等,请求提交到任意服务器,处理结果都是完全一样的。应用的高可用架构设计主要基于服务无状态这一特性。
通过负载均衡进行无状态服务的失效转移;
应用服务器集群Session管理;(交易业务的状态控制)

四、高可用的服务

可复用的服务模块为业务产品提供基础公共服务,大型网站中,这些服务通常分布式部署,被具体应用远程调用。可复用的服务和应用一样,也是无状态的服务,可以使用负载均衡的失效转移策略实现高可用。
分级管理:权重越高,越核心的应用占用越好的资源;
超时设置:超时后,选择重试或转移请求;
异步调用:对时效性要求不高,或不存在第一个业务执行完成之后才能执行第二个业务的场景;
服务降级:大量并发导致性能下降。两种手段,拒绝服务(限流、分流、限区域),或关闭服务;
幂等性设计:服务重复调用,处理结果一致;

五、高可用的数据

对许多网站而言,数据是最宝贵的资产。
1)CAP原理:数据一致性(Consistency)、数据可用性(Availibility)、分区容错性/耐受性/伸缩性(Partition Tolerance);
2)数据备份:冷备份和热备份;
3)失效转移:失效确认—>访问转移—>数据恢复

六、高可用的质量保证

1)自动化测试:一键完成系统部署、测试数据生成、测试执行、测试报告生成等全部过程;
2)预发布验证:同生产环境一样的配置,不同的是,不连接负载均衡服务器,其他数据、服务、资源同正式生产环境一致。
3)代码控制:分支开发,主干发布;
4)自动化部署发布;
5)灰度发布:(发布一部分服务实例,逐渐所有实例发布完成);
6)网站监控:监控数据采集 - 用户行为、服务器性能;监控管理 - 系统预警、失效转移、自动降级;