当前位置:  技术问答>linux和unix

一个关于长连接的问题

    来源: 互联网  发布时间:2017-04-24

    本文导语:  最近有个联通短信的项目,里面涉及到一个长连接的问题。 是这样的,如果是短信上行(也就是说联通发送短信包给我们的服务程序),那么我们这边就需要做服务器,联通那边就来主动连接我们的服务程序,之后...

最近有个联通短信的项目,里面涉及到一个长连接的问题。
是这样的,如果是短信上行(也就是说联通发送短信包给我们的服务程序),那么我们这边就需要做服务器,联通那边就来主动连接我们的服务程序,之后,这个连接是一直保持者,也就是一个长连接,并且每隔一定的时间比如10S双方都主动发起心跳包来维持连接。
在这条链路上,有两件事要做,一是收发正常的短信包,二是收发心跳包。
我们要求写的就是这个服务程序。
我是这么想的,程序启动后,一直阻塞,直到联通的连接过来,然后就用一个线程完成短信的收发和心跳包的维持。
但是,这里存在几个问题不知如何做到:
1,有个规定是这样的,链路有且只能有一条。也就是说任何时候,服务端只能允许一个这样的连接,如果联通在旧连接未断开的情况下又发起一个同样的连接过来,服务端是不理睬的;
2,假如有这样的情况,某个时候链路断开了,服务程序并不知道,因为可能还在等待心跳包的发送,但联通那边已经知道了,并且又发起了一个连接。正常情况下,我应该是接受新连接,并且关闭旧连接。

|
没写过异步网络通讯?

    
 
 

您可能感兴趣的文章:

  • [求教]:NFS的连接问题.做NFS时报连接错误,据称是portmap问题,但...
  • ftp连接问题,就是linux连接windows ftp的问题,高手请进(在线等待)!!!!!
  • 在线请教:linux下用MySQL C API 连接MySQL 4.1.12出现的连接问题,提示升级客户端!!!!!!
  • 动态连接库和静态连接库的问题 在线等待.......!!!
  • 一个连接池使用的问题:这种写法没用上连接池?
  • 我用JBuilder 7连接局域网内一ORACLE 9( 在本机可以连接)的问题?
  • 程序发布的问题(动态连接库的问题)
  • 在jbuilder中调用一bean连接数据库没有问题,在jsp中调用就连接不上数据库
  • linux问题 secureCRT连接的问题 在线等急!~~
  • 文件连接问题
  • linux vsftpd连接问题
  • 数据库连接的问题
  • 关于远程连接lunx的问题
  • tcp连接的问题
  • 程序连接问题!
  • windows 客户机连接 samba 的权限问题, 急啊 ....
  • 关于使用数据库连接的问题。
  • 关于连接共享的问题, 请帮忙
  • 连接池问题
  • 关于LINUX SOCKET连接CPU占用问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • mysql中如何查看最大连接数(max_connections)和修改最大连接数
  • 什么是socket的长连接,以及如何实现长连接,长连接和短连接有什么区别?
  • 如何在windows上远程连接centOS桌面
  • 建立长连接的SOCET通讯后,如何检查长连接的有效性,如何获知连接状态
  • Myeclipse中自带Tomcat的JDBC连接池配置(mysql和mssql)
  • Oracle 表连接方式(内连接/外连接/自连接) 详解
  • php中内置的mysql数据库连接驱动mysqlnd简介及mysqlnd的配置安装方式
  • 关于inetd。我做了一个测试程序,想计算ftp最多能有多少了连接,我发现当连接到1020次就不可以连接了,哪位大侠知道如何做才能将连接数量增加至10000呢??
  • php中操作memcache的类及成员列表及php下如何连接memched服务器
  • 哪位给解释一下长连接和短连接的区别?
  • mysql jdbc连接mysql数据库步骤及常见参数详解
  • ssh连接得通虚拟机,连接不通隔壁宿舍?
  • windows server2012无法连接无线网络解决方法(windows无线连接)
  • 请问unix/linux下动态连接库和静态连接库有什么区别?
  • fedora15 KDE桌面下能连接WLAN,GNOME下能搜到信号,就是连接不上,。。。。
  • linux 有线连接了却显示有线连接断开是怎么回事
  • 建立一个ftp数据连接并传送或接受完毕一些数据后,能否不关闭此数据连接,下次接着用?
  • oracle远程连接服务器出现 ORA-12170 TNS:连接超时 解决办法
  • LINUX中连接C++的库怎么连接.库在什么位置,还有什么特殊命令吗?
  • socket 断开连接如何再恢复连接
  • 请问连接本机数据库的JDBC,和连接远程的JDBC有没有区别?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,