zoukankan      html  css  js  c++  java
  • 如何建立压力计算模型

    给大家看我最近做的一个项目案例,压力计算模型的建立也给大家为架构扩容方案提供了数据参考,使其更加易于衡量和评估!

    一、 非节假日模型

    这里写图片描述

    这里写图片描述

    非节假日,H5压力分布遵从80/60原则,即一天内H5服务器80%压力分布在60%时间段:
    1. 每秒平均事件数 = 80% * 日事件 / 1天 * 60%
    2. 每秒高峰事件数 = 1.4 * 每秒平均事件数
    3. UV与事件曲线分布呈线性关系,日事件 = 3.74 * 日UV
    综合上述,得
    每秒高峰事件数 = 1.4 * (80% * (3.74 * 日UV) / 1天 * 60%)
    每秒高峰事件数 = 6.98 * 日UV / 1天

    二、 节假日模型

    这里写图片描述

    这里写图片描述

    节假日,H5压力分布遵从80/30原则,即一天内H5服务器80%压力分布在30%时间段:
    1. 每秒平均事件数 = 80% * 日事件 / 1天 * 30%
    2. 每秒高峰事件数 = 2.2 * 每秒平均事件数
    3. UV与事件曲线分布呈线性关系,日事件 = 1.675 * 日UV
    综合上述,得
    每秒高峰事件数 = 2.2 * (80% * (1.675 * 日UV) / 1天 * 30%)
    每秒高峰事件数 = 9.83 * 日UV / 1天

    三、 H5单点部署结构服务能力
    1. 以4核4G配置为准,单点最佳负载支持300路并发(每秒高峰事件数)
    2. 在上述压力下最大下行带宽占用62.5MB/s,MYSQL数据库SPS = 80、IOPS = 60
    四、 扩容方案
    以下期推广活动为例,预期产生300万日UV,按节假日模型计,
    H5服务器压力:每秒高峰事件数 = 9.83 * 300W / 24 * 3600 = 342
    故,建议:
    1. H5服务器水平扩展至2台
    2. H5对外访问带宽上限增至近100MB/s
    3. 阿里云RDS匹配服务能力达:连接数 = 120 ,IOPS = 90

  • 相关阅读:
    Java正则表达式的总结
    Mysql数据库操作语句总结
    Java 如何抛出异常、自定义异常
    Java获取系统时间的四种方法
    Mysql与Oracle区别
    Oracle与MySQL的SQL语句区别
    sql语句的各种模糊查询
    基于SpringCloud的Microservices架构实战案例
    一个人走的快,一群人才走的远
    那些会阻碍程序员成长的细节[2]
  • 原文地址:https://www.cnblogs.com/qwop/p/6637385.html
Copyright © 2011-2022 走看看