请求每秒和响应时间之间的相关性?

3

请问请求每秒和响应时间之间有什么关联?首先您想要改善哪一个?如果您的竞争对手在其最常用的功能上提供比您更少的“请求每秒”,那么从最终用户的性能方面来看,您的应用程序是否表现更好?

4个回答

17
请解释每秒请求数和响应时间之间的关联。以加油站为例,汽车以不同的间隔到达并占用泵,它们需要一些时间加油,然后离开。每辆汽车到达并占用泵都是一个请求,完成加油所需的时间就是响应时间。你可以通过两种方式改进服务:如果增加更多的泵,你可以同时服务更多的汽车,因为容量更大;如果让所有的泵加速,那么每个汽车完成时间会缩短,从而在相同数量的泵下可以更多地服务汽车。你首先想要改进哪个指标取决于你想要更快地服务更多人(提高他们的体验并使其他人等待),还是想要一次服务更多人(可能以请求时间为代价)?理想情况下,同时将两个指标提高至最佳水平。

非常好,谢谢。如果我改进我的泵(查找软件中的低效算法,引入缓存,减少SQL请求)并通过加油站吞吐量验证改进,这也意味着每次“为汽车提供服务”的速度都会更快 - 对吗? - Mork0075
如果您在处理请求方面花费更少的时间,那么您实际上可以在同一台泵上随着时间的推移为更多的汽车提供服务。 - John Feminella
那么,你认为了解你的“竞争对手”每秒请求数是可以接受的吗?比如说,“20 RPS很不错”,然后在质量保证步骤中尝试达到这个目标,还是这种比较就像苹果和橙子一样不可比较?这个QA步骤的目标是说“我们的性能很好”。 - Mork0075
除非您的产品接近于互联网商品的地位(例如搜索引擎),否则我会说这是不可比较的。如果您真的想了解自己的表现如何,可以进行负载测试,使系统接近极限,然后添加一个真实用户,并询问他们对网站性能的感受。 - John Feminella

1

这完全取决于您的系统将承受什么样的负载。

如果您有数百万用户,则可能需要处理更多的请求,以每秒钟的速度来看,否则用户可能无法在他们想要连接时进行连接,但这可能会牺牲响应时间。

然而,如果您只有30个用户,则对他们来说,系统快速响应比能够处理每秒一千个请求更为重要。


1

每秒请求数可能很高,但用户体验却很糟糕。你可能有很多用户每秒购买数千张音乐会门票,但每个用户的响应时间超过30秒。

为了拥有高性能、愉悦的网站,您需要每秒请求数量高最大响应时间短。作为用户,我喜欢5秒或更短的响应时间。


我暂时还没明白:响应时间和每秒请求数不应该成反比吗?所以,如果您的响应时间从每个请求3秒增加到30秒,每秒请求数应该会减少。但是,如果我没有看到响应时间,它们仍然可以在眼中很高,对吧? - Mork0075
如果处理的一部分是将请求写入USB密钥,将其扔到计算机中心的实习生那里,并使用安全私钥签署所有数据,那么该怎么办呢?一个8GB的USB密钥可以容纳一百万个请求,在2分钟内进行处理,但响应时间仍然是2分钟。 - Zan Lynx
我不理解这个例子,你能再试一次吗? - Mork0075

0
如果你的竞争对手在最常用的功能上提供的“每秒请求数”比你少,那么你的应用程序在终端用户性能方面表现更好吗?
我不同意这种说法。看看谷歌。他们每秒钟进行数千次请求 - 哎呀,我认为这是每天1亿次和每月30亿次。
回答你的问题,我认为响应时间比每秒请求数更重要。当然,你可以优化/减少所做的请求数量,但是如果你的产品可以扩展以处理无限的请求(只需通过增加硬件来解决问题),那么我认为这更有价值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接