关于系统用户数,并发用户数,在线用户数,吞吐量

摘要:
通常,对于交互式应用程序,用户的直接体验是“响应时间”,系统性能规划可以通过“并发用户数”和“响应时间“来确定;然而,对于非交互式应用程序,使用“吞吐量”来描述我们对系统性能的期望可能更合理。

1、  关于系统用户数,并发用户数和在线用户数

系统用户数

侠义上来说,可以理解为系统注册用户数;广义上来说,可以理解为所有访问过系统的用户数

在线用户数

侠义上来说,可以理解为已登录系统的用户数;广义来说,可以理解为当前时间访问系统的用户数。

并发用户数

可以分两种:

1)同一时间点,执行同一(业务)操作的用户数

2)同一时间点,执行不同(业务)操作的用户数

注意:服务器实际承受的压力并不完全取决于并发用户数,详情见下面的例子。

例子(以51测试论坛为例):

作为专业软件测试论坛,会有很多测试者去论坛注册帐号。

假设到现在已有75万在该论坛注册会员,那我们可以说,该论坛拥有75万的系统用户;

假设在某日早上9点,已有10万会员登陆了论坛,那么我们可以说,该论坛在某日9点时拥有10万的在线用户;

假设在这10万已登陆会员中,某个时间点,有2万会员正在提交新帖子,有3万会员正在编写帖子(假设编写帖子不会产生服务器请求操作);有1万会员在帖子页面浏览某帖子内容;有1万会员正在发呆,啥也不做;还有3万会员正在点击某个帖子,那么我们可以说,某时间点,有2万个并发用户在提交新帖子,有3万个并发用户在编写帖子,有1万个并发用户浏览帖子内容,有3万个并发用户在点击某个帖子,,系统有9万的并发用户。

值得注意的是,这9万并发用户中,真正对系统产生压力的只有5万用户,即提交新帖和点击帖子的用户。换句话说,仅对系统发起了请求的并发用户才会对系统施加压力。

这也告诉我们,要好好测试一个系统的性能,必须先对用户的(业务)操作进行分析,分离出用户最常使用、最关心的(业务)操作,因为使用这些操作的人多,所以容易产生并发的情况。

计算公式:

   (1)

其中,C 是平均并发用户数;n是 login session的数量;L是login session的平均时长。T是考查的时间段长度。

注:login session指用户从登陆系统到退出系统之间的时间段。

Cmax ≈ C + 3   (2)

其中,Cmax 是并发用户数的峰值;C为公式(1)中的并发用户数。

注意:

1.公式的得出是假设用户login session产生符合泊松分布而估算得到的。

2.因为要精确估算平均用户数和login session的长度并不容易,同时用户的业务操作存在一定的时间分布,所以上述公式可能并不是很精确

3.基于第2点的建议:1)基于更细粒度的时间进行考察;2)考虑业务操作时间分布

2、吞吐量

性能测试中,可以侠义的理解为“单位时间内系统处理的用户请求的数量”。一般情况,吞吐量用请求数/秒、页面数/秒来衡量,从业务的角度,吞吐量也可用单位时间内的访问人数、处理的业务数等进行衡量。从网络角度来,也可以单位时间内的处理的数据量等进行衡量。

例如,

对于一个Web应用系统来说,从系统的处理能力考虑,可以以页面数/秒作为吞吐量的标准;对一个银行的前台业务来说,可以以其单位时间内处理的业务数作为吞吐量的标准。

通常,对于交互式应用,用户直接的体验是“响应时间”,通过“并发用户数”和“响应时间”可以确定系统的性能规划;但对于非交互式应用,用“吞吐量”来描述我们对系统性能的期望可能更加合理。

作为性能测试的主要关注指标,吞吐量和并发用户数之间存在一定的联系,在没有遇到性能瓶颈的时候,吞吐量可以采用如下公式计算:


其中,F表示吞吐量, Nvu表示虚拟用户数,R表示每个虚拟用户数发起的请求数,T表示性能测试所用的时间。

注意:虽然吞吐量指标可被看作是系统承受压力的体现,但是不同并发用户数量的情况下,对同一个系统施加相同的吞吐量压力,很可能会得到不同的测试结果。

免责声明:文章转载自《关于系统用户数,并发用户数,在线用户数,吞吐量》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇VS2015安装水晶报表如何取消Notepad++红色下划线(错误提示)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

两种方法上传本地文件到github

https://www.jianshu.com/p/c70ca3a02087 自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败。最重要的原因是我习惯本地编辑,完成以后再一起上传github。看过了几个教程,总结出最适合自己的比较简单的方法。 两种方法上传本地文件到github 1....

【转】关于WannaCry勒索蠕虫的安全预警

【转载】如有侵权或者风险,请及时联系我,我会删除。 自5月12日起一款名为WannaCry的蠕虫勒索软件袭击全球网络,这被认为是迄今为止最巨大的勒索交费活动,影响到近百个国家上千家企业及公共组织。目前国内多家企事业单位相继被攻陷,其中包括中石油加油站、浙江传媒大学、中国计量学院、贺州学院、桂林电子科技大学、桂林航天工业学院、大连海事大学、山东大学等。 一、...

Fiddler显示响应时间

在Tool bar上面找到 Rules->CustomRules 在class Handlers{   里面添加 function BeginRequestTime(oS: Session) { if (oS.Timers != null) { return oS.Timers.ClientBeginRequest.T...

Acrobat 软件注册过程记录

Adobe Acrobat XI安装过程详解 Adobe Acrobat是编辑pdf文档的不二选择,同时它的虚拟打印机功能平常使用也相当频繁,所以在日常工作中我经常使用Acrobat而不是Adobe Reader,下面是我亲自验证过的Acrobat安装过程,具体过程如下: 注:Adobe Acrobat之前版本为10.0版本,只支持英文版本,现在更新为11...

Nginx + Tomcat7 + redis session一致性问题

        Nginx 作负载均衡时,由于是每次都需要把请求分发到不同的机器,同一个用户在一台机器上创建了 session,下一次的请求很有可能会转发到另外一台机器,会造成 session 丢失。我们可以使用 Redis 来保存 session。具体步骤如下: 1.  https://files.cnblogs.com/files/langfanyun...

Java Web项目案例之---登录和注册(精华版)

登录和注册(精华版) (一)实现功能 1.使用cookie记录登录成功的用户名,用户选择记住用户名,则用户再次登录时用户名自动显示 2.实现文件上传功能(上传文件的表单上传于普通的表单上传不同,必须是post,必须有value,enctype必须是multipart/form-data) 3.图片上传后的名称不能重复,使用随机生成的字符串(UUID) 4....