博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
并发用户数详解
阅读量:6458 次
发布时间:2019-06-23

本文共 1241 字,大约阅读时间需要 4 分钟。

  hot3.png

并发用户数的定义要点

        对于定义而言其实并没有特别准确的说法,下面展示几家的说法。

        百度解释:并发主要是针对服务器而言,是否并发的关键是看用户操作是否对服务器产生了影响。因此,并发用户数量的正确理解为:在同一时刻与服务器进行了交互的在线用户数量。这些用户的最大特征是和服务器产生了交互,这种交互既可以是单向的传输数据,也可以是双向的传送数据。

        维基百科解释:一个系统的容量也可以被测量的最大并发用户,在这一点系统的性能开始明显下降。

        Loaderrunner:(经过调查虚拟用户和并发用户是有区别的)并发用户数是指现实系统中操作业务的用户,在性能测试工具中,一般称为虚拟用户数(Virutal User)。并发用户数和注册用户数、在线用户数的概念不同,并发用户数一定会对服务器产生压力的,而在线用户数只是 ”挂” 在系统上,对服务器不产生压力,注册用户数一般指的是数据库中存在的用户数。

        如果说使用的话Loaderrunner就是一个标准了。虽然解释不同。但是思想解释大家都是相同的,重点都在真实对服务器产生压力,但是思考的维度不同时,有的从点击出发有的从时间出发,结果也有不同。

并发用户数的计算

        网上基本就是两种计算方法。      

        1.计算平均的并发用户数: C = nL/T

        C是平均的并发用户数;n是login session的数量;L是login session的平均长度;T指考察的时间段长度。(由于一个人一个时间只能触发一个请求,login session时间就等同访问时间)

        2.根据2-8法则进行估算高峰期的使用人数(20%的时间发生80%的业务)

        并发用户数是一个和业务访问相关的指标,所以并没有通用的计算方法。第一种算法写帖子的人很多,但是明显都是抄的一家的,连举例都是一样的,实在没法认为他是个标准。但是在某些特定的情况下,这个计算也是没有问题的。从时间的角度看压力也是一种方法。这个算法有效的前提就是T的取值是小于访问一个请求的处理时间的。以Loaderrunner为例,我们设置50个虚拟用户就表示有50个并发用户,由于他本身是个压测工具,压测的一个要素就是压测的应用,可能压测不同的URL,结果也不一样。而且压测的重点是看服务器的承载量。当压垮服务器时,只能说这个服务器最多能接受xxx个用户同时访问xxx这个请求。同样看承载量,如果T的时间大于访问的时间话,并发用户数就会被平均。这个数据显示承载量也就不准了。第二个算法就有点强行套2-8法则,暂时看不出科学的解释。

并发用户数的作用

        影响并发用户数的条件因素太多了,所以光看他也不能客观的展示什么问题,一般都结合TPS,如果是TPS只要是有请求过来他就会涨,当请求处理不过来的时候他还在涨,但是并发用户数却和请求了的请求相关,对于在等待处理的并不关心。作为监控指标,结合TPS以及并发用户数才能可靠的看出服务器的承载。

 

转载于:https://my.oschina.net/xpbob/blog/735607

你可能感兴趣的文章
CI框架整合微信公共平台接口
查看>>
XCode快捷键
查看>>
request.getScheme()的使用方法
查看>>
Kaldi单音素模型 训练部分
查看>>
Android快速开发常用知识点系列目录
查看>>
Java ActiveMQ队列模式案例
查看>>
EJB2的配置
查看>>
最容易理解的对卷积(convolution)的解释
查看>>
《机器学习实战》知识点笔记目录
查看>>
Linux操作系统实时性分析
查看>>
mysql导出导入所有数据库
查看>>
[转载]数据库缓存算法思想与实现
查看>>
完美解决NC502手工sql的查询引擎排序及合计问题
查看>>
PHP+MySQL代码部署在Linux(Ubuntu)上注意事项
查看>>
Tiny语言执行环境TM机源码
查看>>
PE文件之资源讲解
查看>>
windows 7/mac编译cocos2d-x-3.2*的android工程报错
查看>>
MYSQL导入导出.sql文件(转)
查看>>
使用Elasticsearch、Logstash、Kibana与Redis(作为缓冲区)对Nginx日志进行收集(转)
查看>>
git review报错一例
查看>>