新手学网站开发,做了下 AB 测试,有几个问题请教下大家!

2015-03-15 23:09:19 +08:00
 leedstyh

我用的ab,还有boom这个软件,做了下测试。

350并发的情况下,Requests/Second大概处于90 - 200之间,90是文章列表页(我就为了测试,数据库中没有插入很多记录,就10多条),200的基本就是直接从内存读取数据生成的页面。

测试是在virtualbox里跑一个ubuntu虚拟机,分配了256M内存,单核(i5,2.8G),nginx反代的go程序。

  1. 请问我这个Request/Second是一个什么样的水平,属于一个什么规模的站点?
  2. 350并发就是最高了,380勉强,400就出错了,但是这个时候我top看了一下,CPU和内存并没有占满,那请问这个瓶颈在哪里了?
  3. @Livid 之前的一个帖子(http://www.v2ex.com/t/79819 )里第二点提到,生成页面最好在10ms之内,请问这个10ms是在什么情况下获得的?350并发的时候,我查看log记录,时间从2ms到几百ms,甚至有过1s的达到3、4秒的。不过不在测试的时候,我随便点一些页面,大多在3 - 6ms之间,这样可以吗?
  4. 考虑网站性能,除了这个Requests/Second数据,还有什么数据比较重要?

新手请教,谢谢大家!

(也发在sf了 http://segmentfault.com/q/1010000002598019

2390 次点击
所在节点    问与答
4 条回复
jarlyyn
2015-03-15 23:30:30 +08:00
一般瓶颈很有可能在数据库
网站没上线不用过多的考虑优化。因为大部分情况下优化主要是靠合理的缓存,而缓存怎么合理主要是看用户是怎么访问的。
个人意见。
leedstyh
2015-03-16 18:04:05 +08:00
@jarlyyn 嗯,我也听过不要过早优化,就是这两天看到个测试的教程,就试了下
crazybubble
2015-03-22 15:36:04 +08:00
关于第4点,我觉得不能光考虑Throughput(req/sec),还要考虑latency(response time),性能其实是看这个比值,在throughput高的情况下latency越低越好,单看这两者任何一个指标都不能算全面。我最近工作中也在做性能测试相关的事情,也还处于学习阶段,我看了这个视频觉得挺有帮助的推荐你看一下: http://www.infoq.com/presentations/performance-testing-java?utm_source=infoq&utm_medium=slideshare&utm_campaign=slidesharelondon
leedstyh
2015-03-23 06:32:22 +08:00
@crazybubble 谢谢,我去看看

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/177127

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX