移动应用http的keep_alive

昨天在开启nginx的gzip压缩后发现,有大量的连接在wating状态而reading和writing状态非常少。

登陆到业务服务器上,发现处于工作状态的进程只有几个。不明原因,之后看到nginx的配置文件,keep_alive时间很长竟然是60秒。果断改短到15秒,经过数分钟后waitting状态的连接已经减少非常多,从300多降低到100多。

http的keep_alive是http规范中为了提高web加载速度和减少短连接而设置的一个很重要的参数。如果一个http连接声明要keep_alive,表示一次请求后不要立刻断开连接,而是等待下一个命令到来接着处理。keep_alive的超时时间,指的是上一个指令处理结束后,下一个指令到来之前需要等待多少时间。但是在移动应用中,很少有单http请求处理多个指令,所以完全可以缩短keep_alive的超时或者干脆关掉,这样会大大的减少不必要的连接保持。

你可能感兴趣的:(移动应用http的keep_alive)