Nginx 之大并发服务器架构实战技法三
keep-alive 这个东西是干什么的? 有好处也有坏处。在http 1.0时代,在client 和 server 端,请求、 应答、 断开。到了http 1.1 的时候,请求你的主页,在主页上还包括了很多的css、 js、 图片,所以,请求你的主页后,你能不能不要把tcp 断开。我请求css 的时候,我的http连接建立在你刚才的http之上,就类似我排一次队,取好几次东西,那么keep-alive 在http1.1之后加上,也有好处,它就是防止了频繁的TCP握手。但是对于高并发网站来说。这里就是一个弊大于利的东西了。因为高并发网站,他们的TCP都是那么的珍贵。结果你抢到一个,还保存了那么长时间。默认为65秒。这显然是一个浪费,所以在高并发网站中 keepalive_timeout 0,是一个要严重注意的选项。如果非想用,把它控制在2秒之内。在大了就不太合适了。我们这里置为0,就是不支持这个功能了。这是,你看已经没有keepalive,取而代之的是:connection:close,这样能加快tcp的回收。 我们通过两台客户端,每台5000并发100000请求,同时压服务器,通过观察nginx 统计模块观察。发现10000的并发比较容易就实现了。而且错误率夜很低或者基本没有。最后通过我们的优化。在原来2000并发撑不住到10000并发轻松实现了。 【编辑推荐】
点赞 0 (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |