Chinaunix
标题:
time_wait 个数过多
[打印本页]
作者:
kaede_1
时间:
2015-09-18 11:09
标题:
time_wait 个数过多
背景:写了一个线程池,有数据过来后发送http push,实现上调用的是libcurl。可是运行一段时间后,执行命令netstat,发现有好多个TIME_WAIT,多的时候有1000多个,但是几分钟后又缩小为几个(可能是数据来时占的比较多,数据处理后就close了)
从网上查了一下,有人说通过修改配置文件/etc/sysctl.conf
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
然后执行命令:/sbin/sysctl -p是配置生效。但是我配置了TIME_WAIT的数量基本上没变化。。。
再次检查了代码,发现在线程函数内,每发送一条数据后会调用curl_easy_cleanup清空句柄,后来想一下,既然是线程池,可不用每发送一条数据后就cleanup。可是注释掉后查看数量仍然没什么变化。。。
请问:
1.如果能使TIME_WAIT的数量下降?
2.就算TIME_WAIT的个数有1000多个,应该不会对系统有什么影响吧?
多谢!
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2