系统稳定性指标计算器
生活随笔
收集整理的這篇文章主要介紹了
系统稳定性指标计算器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
自己寫的,用于計算系統的服務穩定性工具類:
?
/**** @ClassName StabilityCalculator* @author kanpiaoxue* @version 1.0* @CreateTime 2018/01/15 21:20:06* @Description 穩定性計算器* * <pre>* 系統穩定性計算公式(年度):* (100 - (故障分鐘數 / 全年的分鐘總數 * 100)) %* (100 - (故障分鐘數 / (60 * 24 * 365) * 100)) %* (100 - (40 / 525600 * 100)) % = 99.992389649923896%* </pre>*/ public class StabilityCalculator {private enum TimeUnit {YEAR(365), QUARTER(120), MONTH(31);private static final int MINUTES_OF_DAY = 60 * 24;private int days;private TimeUnit(int num) {this.days = num;}public int getMinutes() {return MINUTES_OF_DAY * days;}}public static void main(String[] args) {StabilityCalculator sc = new StabilityCalculator();// 期望一年能達到的系統穩定性為: 99.99%,允許出現問題的最長時間是:52.56分鐘sc.calculateErrorTime(99.99D, TimeUnit.YEAR);// 期望一個季度能達到的系統穩定性為:99.99%,允許出現問題的最長時間是:17.28分鐘sc.calculateErrorTime(99.99D, TimeUnit.QUARTER);System.out.println("==========================================");// 一年中出現了40分鐘的系統不穩定時間,能達到的系統穩定性是:99.99%sc.calculateStabilityPercent(40, TimeUnit.YEAR);// 一個季度中出現了40分鐘的系統不穩定時間,能達到的系統穩定性是:99.98%sc.calculateStabilityPercent(40, TimeUnit.QUARTER);}/**** @param expectedPercent 期望的穩定性百分比* @param timeUnit 統計的時間單位:年,季度* @return 達到期望的穩定性百分比可以出現的最大系統不穩定的時間(分鐘)* @author kanpiaoxue* @CreateTime 2018/01/15 21:45:29* @Description 根據達到期望的穩定性百分比計算出可以出現的最大系統不穩定的時間(分鐘)*/public double calculateErrorTime(double expectedPercent, TimeUnit timeUnit) {double totalMinutes = timeUnit.getMinutes();double minutes = (100D - expectedPercent) / 100D * totalMinutes;System.out.println(String.format("[%s] expectedPercent:%s, the least required minutes:%s minutes",timeUnit, expectedPercent, minutes));return minutes;}/**** @param errorDuration 出現系統不穩定的時長(分鐘)* @param timeUnit 統計的時間單位:年,季度* @return 期望的穩定性百分比* @author kanpiaoxue* @CreateTime 2018/01/15 21:45:32* @Description 根據出現系統不穩定的時長(分鐘)計算出目前系統的穩定性百分比*/public double calculateStabilityPercent(int errorDuration, TimeUnit timeUnit) {double totalMinutes = timeUnit.getMinutes();double expectedPercent = (100D - (errorDuration / totalMinutes * 100D));System.out.println(String.format("[%s] errorDuration:%s minutes, stability percent:%s", timeUnit,errorDuration, expectedPercent));return expectedPercent;}}?
總結
以上是生活随笔為你收集整理的系统稳定性指标计算器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 较为简洁明了的KMP算法解释
- 下一篇: java信息管理系统总结_java实现科