应用场景:
在长连接下,有可能很长一段时间都没有数据往来。理论上说,这个连接是一直保持连接的,但是实际情况中,如果中间节点出现什么故障是难以知道的。更要命的是,有的节点(防火墙)会自动把一定时间之内没有数据交互的连接给断掉。在这个时候,就需要我们的心跳包了,用于维持长连接,保活
什么是心跳机制?
就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息如果服务端几分钟内没...
分类:
其他好文 时间:
2014-07-08 17:51:01
阅读次数:
2210
linux 下Time_wait过多问题解决分类:linuxFAQ2011-07-14 11:203485人阅读评论(0)收藏举报linux服务器tcp通讯活动ssh问题起因:自己开发了一个服务器和客户端,通过短连接的方式来进行通讯,由于过于频繁的创建连接,导致系统连接数量被占用,不能及时释放。看了...
分类:
其他好文 时间:
2014-07-07 15:36:17
阅读次数:
202
第一种设置:通过设置socket的keepalive属性#include "/usr/include/linux/tcp.h"#include "/usr/include/linux/socket.h"////KeepAlive实现,单位秒//下面代码要求有ACE,如果没有包含ACE,则请把用到的A...
分类:
其他好文 时间:
2014-07-02 22:23:42
阅读次数:
711
主动建立TCP链接情况:被动建立TCP链接情况主动断开链接的情况被动断开连接的情况在TIME_WAIT阶段需要停留2倍的MSL,MSL即Maximum Segment Lifetime,表示任何报文被丢弃前在网络内的最长时间,TCP/IP详解中额外注解了:RFC793指出MSL为2min,然而实现中...
分类:
其他好文 时间:
2014-06-30 13:11:44
阅读次数:
350
转载请注明转自: 存储系统研究, 本文固定链接:
socket connect error 99(Cannot assign request address) 这是最近使用libcurl写http服务的压力测试的时候遇到的一个问题,其直接表象是客户端在发送http请求时失败,最终原因是客户端的TIME_WAIT状态的socket进程过多,导致端口被占满。下面看整个分析过程:
(1) 首先看...
分类:
其他好文 时间:
2014-06-25 19:55:59
阅读次数:
1011
之前一直对tcp keepalive选项理解有误,以为通过setsockopt函数设置SO_KEEPALIVE和相关参数后该socket则使用设置的keepalive相关参数否则使用系统默认的:keepalive配置(如下)root@xxx-KVM:/# sysctl -a | grep keepn...
分类:
其他好文 时间:
2014-06-25 09:37:09
阅读次数:
238
同事说系统越来越慢,出现一堆TIME_WAIT,是以前的几十倍,是否跟这个有关系。上去看看什么情况。[xxx@xxx~]$netstat-ntal#一堆TIME_WAIT没释放,几乎由程序本身发起。
tcp00::ffff:127.0.0.1:60110::ffff:127.0.0.1:28080TIME_WAIT
tcp00::ffff:127.0.0.1:60303::ffff:127.0.0..
分类:
其他好文 时间:
2014-06-24 16:26:06
阅读次数:
351
环境说明:[root@dbhtml]#uname-a
Linuxdb2.6.32-358.el6.x86_64#1SMPFriFeb2200:31:26UTC2013x86_64x86_64x86_64GNU/Linux
[root@dbhtml]#cat/etc/redhat-release
CentOSrelease6.4(Final)lvs安装部署:1、查看内核模块是否支持lsmod|grepip_vs#发现没有2、安装wgethttp://www..
分类:
其他好文 时间:
2014-06-16 16:49:23
阅读次数:
326
1、下载安装包并解压sudo wget
http://www.keepalived.org/software/keepalived-1.2.13.tar.gztar
zxvfkeepalived-1.2.13.tar.gz2、编译安装cd keepalived-1.2.13./configure -...
分类:
其他好文 时间:
2014-06-11 10:21:20
阅读次数:
248
记录最近出的几个bugconnection reset by peer最近服务器经常性的出现connection reset by peer的错误,开始我们只是以为小概率的网络断开导致的,可是随着压力的增大,每隔2分钟开始出现一次,这就不得不引起我们的重视了。我们的业务很简单,lvs负责负载均衡(采用的是DR模式),keepalive timeout设置的为2分钟,后面支撑两台推送服务(后面叫做p...
分类:
其他好文 时间:
2014-06-07 16:30:25
阅读次数:
234