一般的服务器瞬时并发应该怎么样才算是合格呢?

我用的100个用户并发,1核 内存1G 1M带宽,测试报告如下,这个性能怎么样呀?
clipboard.png
我就是很想知道,一般的php、java、golang、python…… 这些语言写的、用不用memcache、……这样的服务平均qps应该达到多少才叫做性能高呢?

阅读 6.2k
1 个回答

在不考虑“可并发IO类型的等待时间”的情况下(比如你要远程调用另外一个服务,这个服务要10秒才返回结果,这会影响你的平均每个请求的处理时间,但是等待响应的这段时间 CPU 是空出来的,可以继续处理请求),

平均每个请求的处理时间大概在 100ms 内,算 100ms 吧。你 1 核的机器,每秒就是处理 10 个请求。不作特殊的优化,一般做到这种程度就可以了。

如果你能把单个请求的处理时间做到 20ms ,那么你 1 核每秒就能处理 50 个请求。(这在直接命中缓存的情况下,可能可以达到)

用不用 memcache ,要看你具体场景下,对性能的要求,及可以使用的计算资源。用 memcache 是一种办法,加机器也是一种办法,甚至是改需求,它们只是解决问题的可选方法而已。

“性能高”也要看业务场景,拿 segmentfault 当前这个页面来说,一个请求的处理时间平均能做到 50ms 就不错了。但是如果是一些数据计算类的服务,1个核,1000万数据聚合指标一个请求平均时间能稳定到 2 秒就谢天谢地了。

最后,一般偏应用的服务,内存,带宽,这些资源都用不完的。

推荐问题
宣传栏