zoukankan      html  css  js  c++  java
  • [性能测试]关于在线用户线大于10万用户的测试

    背景:公司项目需要第三方评测中心进行评测,其中一个指标是系统支持最大10万在线用户登录。

    分析:

    1、并发10万个用户去测试不现实,并发数太大,公司无支撑该测试的服务器资源。

    2、并发某个数量级的用户(现有资源可承受的,如1000并发用户)来推断系统是否满足在线用户熟支持10万个以上。但这种做法不太受认可。

    这里就涉及到在线用户数、并发用户数和系统用户数的概念性问题了:

    系统用户数这边比较好测试,属于容量问题。如系统支持100万用户,一般在数据库创建超100万个不同用户名的用户即可。

    并发用户数是指某一时刻同时向服务器发送请求的用户数,与服务器有交互的过程。如系统支持100个并发用户,直接用LR压100并发不报错即可。

    在线用户数是指用户同时在一定时间段的在线数量,不一定与服务器在交互。如系统支持10万个在线用户数,测试方案如何?

    ->不能将在线用户数和并发用户数混为一谈,这个不同概念的东西。当然,如果指标低,能用并发的方式去测试最好,但一般来说,在线的用户数指标很大,难以用并发的方式去测试。而且在线用户数不是所有用户都正在并发交互,如一个网页,可能有20%是在浏览,20%在提交事务,50%在挂着没操作,所以真正的并发的用户不多。有些人说用比率或公式来推算,这里就不做说明了。

    其中一种测试思路如下(web系统):

    在系统session不超时或时间范围内,并发将10万个不同用户登录上系统,以此来验证系统满足支持在线用户数达到10万个。

    方案:

    1、先在系统创建10万个不同登录名的用户

    2、在web页面设置显示字段,每有一个用户登录系统就显示在线用户数+1(便于直观显示)

    3、用LR参数化登录名称,并发200个用户跑一段时间(视视情况而定),顺序的把10万个不同用户登入系统

    以上方案只是应付评测,一定程度上违背了真正的测试。

    PS:如果真的想要评估系统的性能,最好还是模拟用户实际使用情况来定制测试方案来去真实的测试。

  • 相关阅读:
    解耦和耦合
    python os.remove()方法
    python中split()、os.path.split()函数用法
    P7116-[NOIP2020]微信步数【数学】
    2021牛客OI赛前集训营-方格计数【计数,dp】
    2021牛客OI赛前集训营-树数树【树上启发式合并,堆】
    Ybtoj-排列计数【矩阵乘法,分块幂】
    P7888-「MCOI-06」Distinct Subsequences【dp】
    号爸十一集训 Logs
    数据结构 专项题解
  • 原文地址:https://www.cnblogs.com/whylaughing/p/6510376.html
Copyright © 2011-2022 走看看