- 论坛徽章:
- 1
|
本帖最后由 Darleter 于 2011-01-17 18:01 编辑
Haproxy和IIS之间TCP性能测试
情况1
Haproxy 添加 option httpclose ,timeout值为60s
IIS keepalive 勾选 timeout值为默认240s
前端没有压力情况下,单独IP刷新测试,大约刷新10次页面
前端time_wait 数量很多,有80多条time_wait记录。
后端IIS,12条time_wait记录,没有established记录
情况2
Haproxy 删除 option httpclose ,timeout值为60s
IIS keepalive 勾选 timeout值为默认240s
前端没有压力情况下,单独IP刷新测试,大约刷新10次页面
前端HAproxy只有established 连接,有5条established记录,没有发现time_wait记录
后端IIS,12条time_wait记录,没有established记录
情况3
Haproxy 删除 option httpclose ,timeout值为60s
IIS keepalive 不勾选 timeout值为默认240s
前端没有压力情况下,单独IP刷新测试,大约刷新10次页面
前端time_wait 数量很多,有80多条time_wait记录。
后端time_wait 数量很多,目次情况下大约有2屏幕的记录。
到目前为止,结论,IIS keepalive 值对于消除time_wait记录很重要,建议勾选。Haproxy没有支持keepalive,但它只要关闭option httpclose 选项。就能达到类似tunnel optimize的效果。
为了支持对动态网页的keepalive off选项,故作如下测试
情况4
Haproxy 保留 option httpclose ,timeout值为0s
IIS keepalive 不勾选 timeout值为默认0s (非常爽快的当机了)
timeout值为默认1s (正常启动了)
Haproxy 有一则说明,大意就是关闭连接这个活,尽量去让cpu负担吧,纳秒级的运行速度,为什么不压榨使用。
IIS 彻底没看见estableshed 和 time_wait 记录
Linux 需要编译内核,也能支持。Time_wait 记录也基本看不见了。
效果很好。可惜唯一的因数:就是修改成0后,系统非常爽快的当机了,个人担心修改后的系统会不稳定。
哪位同仁,如果在实际生产环境中使用了4这个情况,请一定把结果和压力情况发给我。
darleter[###]hotmail.com [###]替换成@ |
|