SLA 99.9% 到底怎么算,报表怎么做才站得住
合同里写 99.9%,很多人以为就是「基本不挂」。
换算一下:一个月 43 分钟。听起来还行,但如果探测频率是 5 分钟,一次 4 分钟的故障你可能根本测不到。
公式简单,口径复杂
可用性 =(总时间 − 不可用时间)/ 总时间。
问题在「不可用」怎么定义:状态码非 200 算吗?返回 200 但内容是错误页算吗?TTFB 超过 3 秒算吗?
这些口径不提前约定,年底对账一定吵架。
探测频率决定精度
1 分钟一次,一个月约 4.3 万次探测,能捕捉到分钟级故障。
5 分钟一次,只有 8600 次,中间的空档全是盲区。
所以谈 SLA 的时候,探测频率和节点数要一起写进去,只写百分比没有意义。
多节点怎么算
两种算法:任一节点失败算不可用(严格),或者超过一定比例节点失败才算(宽松)。
前者适合核心业务,后者适合有 CDN 多活的场景。选哪种,提前定。
报表怎么做
按月统计:总探测次数、失败次数、可用率、最长连续故障时长、故障时间分布。
再加一张按地区的可用率表。全国 99.95%,但某个省只有 97%,这张表能暴露问题。
别自己拼数据
手工统计容易漏,也不可复现。用定时拨测跑,原始记录留着,出争议能翻。
一个现实提醒
99.99% 是每月 4 分钟,靠单机房基本做不到。要这个数字,先准备好冗余和切换方案,别只在纸上写。
定时任务和统计在 监控控制台 里配,节点按地区选,报表数据才有说服力。