zoukankan      html  css  js  c++  java
  • Socket心跳包理解历程

    Socket心跳包理解历程 - 风去云寂寞的日志 - 网易博客

    Socket心跳包理解历程   

    2009-03-28 23:35:55|  分类: 默认分类 |  标签:  |字号 订阅

             去年开始接触C/S类型程序,这里就免不了有SOCKET编程,项目需要使用长连接,那么就需要心跳机制。习惯性GOOGLE了下,一个发送一个接收,检测。感觉在服务器上发送挺方便的,于是就在服务器上往客户端上分发,客户端检测。那么如果连接服务器比较多的话,检测就多了,客户端做起来又有些麻烦,后来想到了双向互发。可惜这样也不行,SOCKET使用发送去检测是不可靠的,最后还是使用了客户端发送,服务器检测这种模式。

            到现在,对服务器的编程支离破碎也明白了一些,经验太少,遇到的问题不够全面。处理问题能力也不够,还需要多多的学习,毕竟这些东西比一般的程序要求要高。

             最后提下.NET的SOCKET连接超时问题,一般在LINUX下,处理超时都先设置非阻塞模式,然后用SELECT去判断超时,但在C#中,如果使用非阻塞模式,那么就直接出异常。开始以为.NET不能直接实现了,后来发现,可以捕获这个异常,然后维护一个连接标志。为了实现这个目标,于是就继承了SOCKET类。重写了连接和关闭方法。

            下一步重点放在服务结构学习方面。

  • 相关阅读:
    Linux目录图解
    Linux-Monitor-Tools
    常用系统及工具下载
    vim 编辑器常规使用
    Win10 安装.NET framework 3.5
    Apache 2.4.6 新增虚拟目录
    html5
    CentOS 7 修改ssh端口
    CentOS7 设置密码复杂度
    CentOS 7安装 hping
  • 原文地址:https://www.cnblogs.com/lexus/p/2852836.html
Copyright © 2011-2022 走看看