IT修真院·小课堂丨互联网职业小课堂在线学习平台

课堂课题:

什么是TPS,什么是每秒并发数,什么是90%Line?分别应该到达多少算符合系统上线的要求?

关联任务:

任务五

直播时间:

2019-08-01 15:30:00


课堂内容:

视频链接:

PPT链接:

提交按钮:

小课堂内容格式


标题:

【修真院xx(职业)小课堂】课题名称

开场语:

大家好,我是IT修真院XX分院第X期的学员XX,一枚正直纯洁善良的XX程序员,今天给大家分享一下,修真院官网XX(职业)任务X,深度思考中的知识点——XXX

(1)背景介绍:

背景介绍的时候,尽可能的要宽广,讲清楚来龙去脉,讲清楚为什么会需要这个技术。

(2)知识剖析:

讲知识点的时候,尽可能的成体系,学会成体系的去给别人介绍知识。现在很多做的都是零散的,没有分类。

(3)常见问题:

最少列出1个常见问题。

(4)解决方案:

写清楚常见问题的解决方案。

(5)编码实战:

尽可能的去寻找在真实项目中在用的。如果你能找到某个网站在用你说的知识点,这是最好的。学以致用,否则当成练习题就没有意义了。多准备一些demo,讲解过程中将知识点和demo结合,便于大家理解所讲解的知识点。

(6)拓展思考:

知识点之外的拓展思考,由分享人进行讲解,这些东西就是所谓的深度,也是一个人技术水准高低比较的表现。

(7)参考文献:

引入参加文献的时候,在引用的句子后面加上序号【1】。参考文献中列出详细来源。不要去抄别人的东西,这是一个基本的态度。

(8)更多讨论:

Q1:提问人:问题?
A1:回答人(可以是分享人,也可以是其他学员):回答
Q2:提问人:问题?
A2:回答人(可以是分享人,也可以是其他学员):回答
Q3:提问人:问题?
A3:回答人(可以是分享人,也可以是其他学员):回答

(9)鸣谢:

感谢XX、XX师兄,此教程是在他们之前技术分享的基础上完善而成。

(10)结束语:

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

什么是TPS,什么是每秒并发数,什么是90%Line?分别应该到达多少算符合系统上线的要求?    

辅导师兄


标题:

【修真院java小课堂】课题名称:什么是TPS,什么是每秒并发数,什么是90%Line?分别应该到达多少算符合系统上线的要求?

开场语:

大家好,我是IT修真院武汉分院第18期的学员李伟川,一枚正直纯洁善良的java程序员,今天给大家分享一下,修真院官网java任务六,深度思考中的知识点——什么是TPS,什么是每秒并发数,什么是90%Line?分别应该到达多少算符合系统上线的要求?

(1)背景介绍:

在初期apache公司自己完成自己的项目之后,总要自己进行性能测试,知道这个项目完成之后有没有达到自己的预期目标。他们就自己做了一个测试工具,这个工具就是后面的jmeter。这个纯由java写的测试工具,后来经过发展壮大。我们能使用jmeter来做许多测试。通常我们使用jmeter来做压力测试。来测试性能可以接受的前提下,测试系统可以支持的最大负载。

(2)知识剖析:

什么是TPS,什么是每秒并发数,什么是90%Line?

 1.QPS(TPS):每秒钟request/事务 数量

 2.并发数: 系统同时处理的request/事务数

3.90%line就是按顺序排列的一组数据中居于90%位置的数。如果把中位数叫做50%分位数的话,90%line就是90%分位数。

并发数:同一时间点服务器接收并成功处理的请求数(只是成功处理,返回客户端就不算了,不可能说客户端不行,还把锅甩给服务器),而不是同一时间段(一秒内)成功处理的请求数。

同一时间点最大用户连接数,这个和并发还是相对接近的。因为同一时间点并发,需要WenServer或其他中间件有足够的连接数,否则你做不到同一时间点并发。

TPS,官方说法:每秒处理事物数。一秒是时间段,而不是时间点了。所以我认为,TPS不能称之为并发数,它只能说是给你一个参考,让你知道你的服务器每秒能成功处理并成功返回多少个请求给客户端(TPS是并发参考数据,而并发本身指的是某个点,也就是瞬间的处理事务,所以每秒并发数没有意义)。


分别应该到达多少算符合系统上线的要求?

并发数,根据在开发时,定义的访问量来计算.每秒并发量=总数/(平均在线时间秒数)<br>

举例:八万的用户,10分钟的平均在线时间. 每秒并发数=80000/(10*60)=133.3

tps:根据二八原则,20%常用时间,满足80%的业务量

例子:TPS=(80000*80%)/(8*60*60*20%)=11.1  ,8万用户的预设,8小时的活跃时间

响应时间,一般根据具体要求,修真院是200ms ,90%的线,最大不超过500ms.

(3)常见问题:

如果某一次测出的TPS非常小,怎么办?

1)服务器处理能力本如此

2)负载机的用户数没发出去,如给10个用户,只发了3个用户。如果是这种情况,可以用siege试一下

3)如果这时的CPU和内存占用也很小,可能是网卡满了

(4)解决方案

 性能调优:拿空间换时间,拿时间换空间

 时间:响应时间

空间:缓存

(5)编码实战:


(6)拓展思考:

 怎么控制并发

如上所说,并发是一个状态,是瞬时的,我们平常所说的每秒并发数,其实是没有意义的,只是一个参考, 利用线程的不退出,循环次数为永远.这样到了释放线程的点(全部释放之后)就能稳定到某个并发.

(7)参考文献:

https://www.cnblogs.com/loveapple/p/10038833.html

https://blog.csdn.net/wind19/article/details/8600083

https://bbs.csdn.net/topics/391493575?page=1

(8)更多讨论:

Q1:jmeter怎么使用?
A1:创建一个线程组,创建http请求就行了,在创建几个统计数据的监听器。
Q2:怎么读取并发数
A2:在监听器中的有一个jp@gc - Transactions per Second监听器,可以把自己的TPS表得出,然后每一个点是状态,我们点上去,就有相关的数据。纵坐标就是并发数的一个参数。

Q3:怎么加快访问速度
A3:时间换空间,空间换时间。

(9)结束语:

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

评论

请您登录 后进行评论