高性能PHP应用开发

基准测试

影响相应时间的五个方面

  1. 地理位置和网络问题
  2. 响应大小
  3. 代码处理
  4. 浏览器行为
  5. web服务器配置

Keep-Alive设置

持久连接

服务器可以打开特定数量的连接,并可以保持这些连接处于打开状态以满足其他出入的请求。这样便不再需要Web服务器为每个传入的请求打开一个连接,满足请求后再关闭。

在http早期,每个http请求都要求打开一个tpc socket连接,并且使用一次之后就断开这个tcp连接。

使用keep-alive可以改善这种状态,即在一次TCP连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。

但是,keep-alive并不是免费的午餐,长时间的tcp连接容易导致系统资源无效占用。配置不当的keep-alive,有时比重复利用连接带来的损失还更大。所以,正确地设置keep-alive timeout时间非常重要。

你可能感兴趣的:(高性能PHP应用开发)