一、系统吞吐量的定义 
系统吞吐量指的是系统在单位时间内可处理的事务的数量,是用于衡量系统性能的重要指标。例如,在网络领域,某网络的系统吞吐量指的是单位时间内通过该网络成功传递的消息包数量,通常可以使用bps(bits per second)来表示。对联机交易系统来说,系统吞吐量指的是单位时间内成功处理交易请求并响应的数量。
二、影响系统吞吐量的因素
影响系统吞吐量的因素很多,包括并发数和系统资源(CPU、内存、系统IO操作、外部接口)等,系统资源等这些因素可以用平均响应时间指标来衡量,因此,系统吞吐量可以表示为:
系统吞吐量TPS = f(并发数,平均响应时间)。
1、平均响应时间
对请求作出响应所需要的时间,包括:
网络传输时间:N1+N2+N3+N4
应用服务器处理时间:A1+A3
数据库服务器处理时间:A2
响应时间=N1+N2+N3+N4+A1+A3+A2
2、并发用户数
平均并发用户数的计算:C=nL / T,其中C是平均的并发用户数,n是平均每天访问用户数(login session),L是一天内用户从登录到退出的平均时间(login session的平均时间),T是考察时间长度(一天内多长时间有用户使用系统)
并发用户数峰值计算:C^ 约等于C + 3*根号C,其中C^是并发用户峰值,C是平均并发用户数,该公式遵循泊松分布理论。
在系统资源足够的情况下,当并发数逐渐增大时,系统吞吐量随之增大,但当系统资源使用率达到峰值时,若并发数继续增大,使得系统超负荷运行,则会因上下文切换、内存等造成系统性能下降,系统吞吐量减小。
系统吞吐量与并发数、系统资源使用率、平均响应时间的关系可用下图表示:
