服务器实现心跳机制的两种策略
摘要:
大部分CS的应用需要心跳机制。心跳机制一般在Server和Client都要实现,两者实现原理基本一样。Client不关心性能,怎么做都行。如果应用是基于TCP的,可以简单地通过SO_KEEPALIVE实现心跳。TCP在设置的KeepAlive定时器到达时向对端发一个检测TCP segment,如果没收到ACK或RST,尝试几次后,就认为对端已经不存在,最后通知应用程序。这里有个缺点是,Server主动发出检测包,对性能有点影响。应用自己实现 Client启动一个定时器,不断发心跳; Server收到心跳后,给个回应; Server启动一个定时器,判断Client是否存在,判断方法这里列两种:时 阅读全文
posted @ 2010-12-04 10:48 daemonh 阅读(521) 评论(0) 推荐(0) 编辑