如何优化APP服务器系统以提高其吞吐量?
app服务器系统吞吐量
一、系统吞度量要素
系统的吞度量(承压能力)与多个因素紧密关联,单个请求对CPU的消耗、外部接口以及IO等都会影响系统的吞吐能力,单个请求对CPU的消耗越高,外部系统接口和IO的速度越慢,系统的吞吐能力就越低,反之亦然。
重要参数
QPS(TPS):每秒钟请求/事务数量。
并发数:系统同时处理的请求/事务数量。
响应时间:一般取平均响应时间。
理解了这三个要素的意义之后,可以推算出它们之间的关系:
\[ \text{QPS} = \frac{\text{并发数}}{\text{平均响应时间}} \]
一个系统的吞吐量通常由QPS(TPS)和并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。
二、决定系统响应时间要素
系统一次调用的响应时间也有一条关键路径,这条路径包括CPU运算、IO和外部系统响应等组成,这些因素共同决定了系统的响应时间。
三、系统吞吐量评估
在进行系统设计时,需要考虑CPU运算、IO和外部系统响应因素造成的影响,并对系统性能进行初步预估,通常情况下,面对需求,我们评估出来的QPS和并发数之外,还有另外一个维度:日PV,通过观察系统的访问日志发现,在用户量很大的情况下,各个时间周期内的同一时间段的访问流量几乎一样,比如工作日的每天早上,只要能拿到日流量图和QPS,我们就可以推算日流量。
四、软件性能的几个主要术语
响应时间:对请求作出响应所需要的时间,网络传输时间、应用服务器处理时间和数据库服务器处理时间共同构成了响应时间。
并发用户数:在一定的时间范围内,最大的同时在线用户数量,同时在线用户数=每秒请求数RPS(吞吐量)+并发连接数+平均用户思考时间。
吞吐量:指单位时间内系统处理用户的请求数,从业务角度看,吞吐量可以用请求数/秒、页面数/秒、人数/天或处理业务数/小时等单位来衡量;从网络角度看,吞吐量可以用字节/秒来衡量。
五、软件性能测试的基本概念和计算公式
响应时间:对请求作出响应所需要的时间。
并发用户数:在一定的时间范围内,最大的同时在线用户数量,同时在线用户数=每秒请求数RPS(吞吐量)+并发连接数+平均用户思考时间。
吞吐量:指单位时间内系统处理用户的请求数,从业务角度看,吞吐量可以用请求数/秒、页面数/秒、人数/天或处理业务数/小时等单位来衡量;从网络角度看,吞吐量可以用字节/秒来衡量。
六、相关问题与解答
1、什么是QPS和TPS?
QPS(Queries Per Second)是每秒查询率,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,TPS(Transactions Per Second)是事务数/秒,一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。
2、如何计算并发用户数?
并发用户数可以通过以下公式计算:C=nL / T,其中C是平均的并发用户数,n是平均每天访问用户数(login session),L是一天内用户从登录到退出的平均时间(login session的平均时间),T是考察时间长度(一天内多长时间有用户使用系统)。
到此,以上就是小编对于“app服务器系统吞吐量”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。
暂无评论,1人围观