昨天读完了段念写的《软件性能测试过程详解与案例剖析》一书的第一章,感觉学到了不少东西,以下将该书中的我认为是精华的一篇复制过来给大家一起看看:
在实际的性能测试中,经常接触到的与并发用户数相关的概念还包括“并发用户数”、“系统用户数”和“同时在线用户数”,下面用一个实际的例子来说明它们之间的差别。
假设有一个OA系统,该系统有2000个使用用户——这就是说,可能使用该OA系统的用户总数是2000名,这个概念就是“系统用户数”,该系统有一个“在线统计”功能(系统用一个全局变量记数所有已登录的用户),从在线统计功能中可以得到,最高峰时有500人在线(这个500就是一般所说的“同时在线人数”),那么,系统的并发用户数是多少呢?
根据我们对业务并发用户数的定义,这500就是整个系统使用时最大的业务并发用户数。当然,500这个数值只是表明在最高峰时刻有500个用户登录了系统,并不表示实际服务器承受的压力。因为服务器承受的压力还与具体的用户访问模式相关。例如,在这500个“同时使用系统”的用户中,考察某一个时间点,在这个时间上,假设其中40%的用户在较有兴致地看系统公告(注意:“看”这个动作是不会对服务端产生任何负担的),20%的用户在填写复杂的表格(对用户填写的表格来说,只有在“提交”的时刻才会向服务端发送请求,填写过程是不对服务端构成压力的),20%部分用户在发呆(也就是什么也没有做),剩下的20%用户在不停地从一个页面跳转到另一个页面——在这种场景下,可以说,只有20%的用户真正对服务器构成了压力。因此,从上面的例子中可以看出,服务器实际承受的压力不只取决于业务并发用户数,还取决于用户的业务场景。
在实际的性能测试工作中,测试人员一般比较关心的是业务并发用户数,也就是从业务角度关注究竟应该设置多少个并发数比较合理,因此,在后面的讨论中,也是主要针对业务并发用户数进行讨论,而且,为了方便,直接将业务并发用户数称为并发用户数。
(1) 计算平均的并发用户数: C = nL/T
(2) 并发用户数峰值: C’ ≈ C+3根号C
公式(1)中,C是平均的并发用户数;n是login session的数量;L是login session的平均长度;T指考察的时间段长度。
公式(2)则给出了并发用户数峰值的计算方式中,其中,C’指并发用户数的峰值,C就是公式(1)中得到的平均的并发用户数。该公式的得出是假设用户的login session产生符合泊松分布而估算得到的。
实例:
假设有一个OA系统,该系统有3000个用户,平均每天大约有400个用户要访问该系统,对一个典型用户来说,一天之内用户从登录到退出该系统的平均时间为4小时,在一天的时间内,用户只在8小时内使用该系统。
则根据公式(1)和公式(2),可以得到:
C = 400*4/8 = 200
C’≈200+3*根号200 = 242
相关推荐
在讨论用户并发数和在线数的关系之前,我们首先需要了解什么是“系统用户数”、“同时在线用户数”和“并发用户数”。 系统用户数是指可能使用该系统的用户总数。在我们的例子中,该系统有2000个使用用户,这就是...
其中,C 是平均的并发用户数,n 是“用户从登录进入系统到退出系统之间的时间段”的数量,L 是“用户从登录进入系统到退出系统之间的时间段”的平均长度,T 是考察的时间段的长度。 formula(2):C ≈ C + 3√C ...
在线用户数指的是同时登录系统的用户数,而并发用户数指的是同时执行操作的用户数。例如,OA 系统使用用户是 100 个,其中 50 人同时在线,但是这 50 人在线不一定都是在执行操作的,可能有一些人只是登录了系统但是...
并发用户数、系统用户数和同时在线用户数的概念及计算方法
性能之并发用户数的计算 标题解释 ...7. 并发用户数和 TPS 都是评估系统性能的重要指标,但是在评定服务器的性能时,应该结合 TPS 和并发用户数,以 TPS 为主,并发用户数为辅来衡量系统的性能。
通过对并发用户数概念的深入理解和科学的估算方法介绍,我们不仅能够更准确地评估系统的性能瓶颈,还可以在系统设计初期更好地进行容量规划。这种方法不仅能提高系统的稳定性,还能有效避免资源浪费,从而为企业带来...
本文将详细解释TPS在线用户和并发的关系,包括在线用户数和压力线程之间的关系、并发用户数的计算、并发度的计算等。 在线用户数和压力线程之间的关系 在线用户数是指系统中当前活动的用户数量,而压力线程是指...
Loadrunner的并发用户数和集合点分析 Loadrunner的并发用户数和集合点分析
并发用户数是指系统在某一时刻的在线用户数。计算公式为 C=nL / T,其中 C 是平均的并发用户数,n 是平均每天访问用户数,L 是一天内用户从登录到退出的平均时间,T 是考察时间长度。并发用户数峰值计算公式为 C^ 约...
它可以通过系统用户数、同时在线用户数和平均并发用户数来计算。平均并发用户数的计算公式为 C=nL / T,其中 n 是平均每天访问用户数,L 是用户登录到退出的平均时间,T 是考察时间长度。并发用户数峰值通常比平均...
在软件性能测试领域,有三个核心概念至关重要,它们是并发用户数、吞吐量和思考时间。这些概念对于评估系统的性能和用户体验具有决定性的意义。本文将详细探讨这些概念的含义、计算公式,以及它们在性能测试中的作用...
本文主要介绍如何配置 Apache 的最大并发用户数和 TCP 连接设置,以提高 Web 服务器的性能和可扩展性。 1. 了解 MPM 模块 Apache 在编译时可以选择使用的 MPM(Multi-Processing Module)模块,使用./configure --...
最后,提到的`OnlineCounter`可能是实现这个功能的一个工具类或模块,它可能包含了对在线用户计数的封装,包括存储和读取在线用户数的方法。在项目中,这样的工具类可以帮助我们更好地管理和维护在线用户数的统计。 ...
它旨在评估在多用户同时使用系统时的性能表现,确保系统能够处理预期的最大并发用户数而不会发生性能瓶颈或崩溃。并发测试的主要目的是找出可能影响系统稳定性和响应时间的性能问题。在并发测试过程中,测试人员会...
在IT领域,尤其是在数据库管理与优化中,了解和掌握数据库的最大并发用户数是至关重要的。本文将基于给定文件的标题、描述、标签以及部分内容,深入探讨如何查询Oracle数据库的最大并发数,以及这一参数对系统性能的...
它允许开发者在用户浏览器会话期间保持特定数据,这对于处理用户登录、防止重复登录以及统计在线用户数等场景非常有用。本解决方案的核心就是巧妙地利用了`Session`对象的功能。 首先,我们来理解`Session`的基本...