或者

ETag助力站点提交sitemap ~对服务器性能的影响

作者:浅色记忆 浏览:95 发布时间:2017-09-15
分享 评论 0

不管怎么样的ETag,在服务器端都要进行计算,计算就有开销,会带来性能损失。一些网站把Etag禁用了,这其实不符合HTTP1.1的规定,因为HTTP/1.1总是鼓励服务器尽可能的开启Etag。为了确定ETag对性能造成的具体影响。我们在服务器上(CPU Intel E5-2620 2.00GHz,内存65G,Web Server使用此CPU的两个核心)进行压力测试,在逐渐增加并发用户数目的情况下,查看CPU消耗率和服务器吞吐率在有无设置ETag情况下的具体对比。

  一、Apache

  CPU利用率

  如下图所示,其为测试中服务器使用的平均CPU利用率,纵坐标为百分比,横坐标为开始测试的时间,其中不用ETag时,平均CPU利用率为18.62805%;启用ETag时,平均CPU利用率为21.20956%。

  

  吞吐率

  如下图所示,图中横坐标为并发连接数,可见有无启用ETag对服务器吞吐率的影响不大。

  

  二、Nginx

  CPU利用率

  如下图所示,其为测试中服务器使用的平均CPU利用率,纵坐标为百分比,横坐标为开始测试的时间,其中不起用ETag时,平均CPU利用率为8.679665%;启用ETag时,平均CPU利用率为9.776242%。

  

  吞吐率

  如下图所示,图中横坐标为并发连接数,可见有无启用ETag对服务器吞吐率的影响不大。

  

  三、结论

  从实际实验可以看出有无设置ETAg对服务器在高并发下的吞吐率几乎无影响,设置ETag后的负面影响主要为增加了CPU负载1%~3%。