昨天用ab简单的测试了自己写的几个静态页面。其中有一个页面,刚开始的时候里面写了很多javascript代码和css,没有使用单独的js和css文件,吞吐率竟然只有3.几req/s。后来尝试把js和css写成单独的文件,吞吐率明显提升。难道一个文件的大小就可以对吞吐率有如此大的影响。但是后来再使同样很大的文件就没有这么差的吞吐率,说明大小不是唯一的问题,我觉得可能是因为那个页面的js包含了很多计算,因为测试的时候CPU利用率一度达到100%。不过把js和css单独提出来的确能提高吞吐率,用其他问题测试的结果也是一样的。
下面是其中一个文件的测试结果: 我觉得也许是因为单独放置之后可以单独缓存的原因,只加载一次,所以会变快。不知道有没有更合理的解释。看到的大牛请指教下。
文件大小 | Time taken for tests | Requests per second | Transfer rate |
---|---|---|---|
8058 bytes | 18.904 seconds | 52.90 [#/sec] | 430.42 [Kbytes/sec] |
3613 bytes | 15.374 seconds | 65.05 [#/sec] | 246.84 [Kbytes/sec] |
2720 bytes | 14.844 seconds | 67.37 [#/sec] | 196.91 [Kbytes/sec] |
1804 bytes | 13.705 seconds | 72.97 [#/sec] | 148.00 [Kbytes/sec] |