非常好的web前端技术
http://www.zendstudio.net/category/js-div-css/: 幸福
<div class="entry">web socket 心跳包的实现方案05/30/2010
现在网络环境错综复杂,socket心跳包是获得健康强壮的连接的有效解决方案,今天,我们就在web socket中实现心跳包方案,是的,尽管我们只是做一个简单的聊天室,但我们让他稳定可靠一些一点也没有错。
我的心跳包方案很是简单,原理就是间隔发送心跳包数据给服务器,服务器在一定时间内发回心跳包响应,对比超时限定,如果超过设定的超时时间,则认为当前与服务器的websocket连接已经断开,关闭当前web socket连接,善后处理,例如重新连接,或者弹出提示……
比较有用的核心代码是这样子的:
<div style="padding-bottom: 0px;" class="wp_syntax"><div class="code">function keepalive( ws ){var time = new Date();if( last_health != -1 && ( time.getTime() - last_health > health_timeout ) ){//此时即可以认为连接断开,可设置重连或者关闭连接$("#keeplive_box").html( "服务器没有响应." ).css({"color":"red"});//ws.close();}else{$("#keeplive_box").html( "连接正常" ).css({"color":"green"});if( ws.bufferedAmount == 0 ){ws.send( '~H#C~' );}}}
页:
[1]