最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

shtml的性能测试分析

编程开发 2373浏览 1评论

shtml比起html最大的好处就是可以使用包含指令,不仅节省不少磁盘空间,更新内容时也非常方便。功能更强了,自然性能也会降低,那么究竟降低多少呢?下面就来测试一下。

测试环境:

系统:ubuntu 12.04(虚拟机)
web服务器:apache 2.2.22
测试软件:ApacheBench(apache自带的压力测试工具)

测试思路:

  1. 测试html的性能。
  2. 测试没有任何指令的shtml的性能。
  3. 测试只有一个包含指令的shtml的性能。
  4. 测试多个包含指令的shtml的性能。

数据单位均为:reqs/s(每秒请求数)

1、测试html的性能

页面内容很简单,就是“hello world!”。

$ ab -c 100 -n 10000 http://192.168.2.131/test.html

192.168.2.131是服务器的地址。执行10次,结果如下:

4744.53
5059.37
4758.56
5433.15
5278.94
5325.25
5188.99
5379.88
4993.56
5291.38

平均:5145.36

2、测试没有任何指令的shtml的性能

$ ab -c 100 -n 10000 http://192.168.2.131/test.shtml

结果如下:

5096.60
4768.16
5011.30
4917.66
4917.65
5280.39
5137.06
5060.40
4994.30
5188.98

平均:5037.25

3、测试只有一个包含指令的shtml的性能

页面输出内容和上面的一致,不同的是内容是放在文件tmp.shtml里,test.shtml包含了tmp.shtml文件。

$ ab -c 100 -n 10000 http://192.168.2.131/test.shtml
4393.79
4442.38
4385.59
4412.89
4789.85
4462.07
4403.87
4368.00
4545.41
4253.96

平均:4445.78

4、测试多个包含指令的shtml的性能

将页面内容分散到tmp1.shtml、tmp2.shtml、tmp3.shtml文件,test.shtml包含这个三个文件。

$ ab -c 100 -n 10000 http://192.168.2.131/test.shtml
3887.27
3752.72
3800.96
3831.63
3633.61
3658.53
3720.77
3635.75
3643.07
3637.80

平均:3720.21

小结

从上面的数据可以看出:

  • 如果只是单纯的shtml,性能下降并不严重,性能下载百分比约为(5145.36-5037.25)/5145.36=2.1%。
  • 和不包含指令的shtml的相比,包含一个文件后,性能下降就比较多,下降百分比:(5037.25-4445.78)/5037.25=11.7%。
  • 从第4个测试可以看出,包含指令越多,性能下降越严重。

另外还有一点需要注意下:如果是html,同一个客户端第一次访问是200状态,第二次访问就是304 Not Modified状态。而shtml始终是200状态。也就意味着使用shtml,每次访问都会传输页面内容数据,对带宽来讲也会造成额外的压力。所以在决定是否使用shtml时,这个因素也应当列入考虑的范围。

nginx在静态页面方面的吞吐量比apache优秀很多,不晓得在shtml方面处理效率如何,抽空再测试下吧。

转载请注明:快乐编程 » shtml的性能测试分析

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (1)

  1. shtml,只见过,不知道是神马
    xiaomingtt4年前 (2013-01-24)回复