本帖最后由 VisualEleven 于 2012-01-13 21:04:01 编辑

解决方案 »

  1.   

    简单的,用select ,复杂的 用完成端口
    KeepAlive 使用map或list管理连接
      

  2.   

    找一个HTTPServer的原代码看一下就可以,大体是都一样,只是协议格式不一样罢了
      

  3.   

    1/,先定义你的数据,然后就分成一个个数据库的字段.
    2. 客户端不多就可以一个线程一个socket连接,还可以用线程池来提高效率
    3. 用用户ID等,或者session概念
      

  4.   

    1. 要看你需要保存哪些数据
    2. 访问量不大的话,可以一个线程维护一个连接,如果比较大的话,可以考虑是用非阻塞IO模型
    3. 可以根据该用户的时间戳,当然你的服务器需要保存客户端的一些其它信息,ID/SOCKET/时间戳等等,比便能够判断该客户断开连接以后再次连接,能够查找出之前是否连接过,然后比较时间戳
      

  5.   

    1.这个数据库里一般该如何定义哪些字段;(至少要有对方的IP,而且你还要想个办法保存既往的数据
    2.服务器如何来管理这么多个socket(每一个GPRS或客户端连上服务器就是一个socket),有的人说每来一个socket就创建一个线程,我觉得不好;(建议直接去学习IOCP
    3.当同一个终端或客户端掉线了又再次连接上了服务器,这个时间间隔很短,服务器如何来正确的删掉那个失效的socket;(你可以记录客户最近发送数据的时间,再每隔一段时间检查一下,发现某个socket超过一定时间没有活动,就关闭它
      

  6.   

    问题解决了吗?  如果没有解决的话,可以聊聊 QQ 1965-283-135我们最近开发了一个大型的GPRS连接服务器,你遇到的问题也都遇到过并解决了。我们的团队以前写过一个单台windows 2003服务器支持上千个socket连接,并把数据写入sql数据库的应用。在这个基础上,有一些技术socket方面的技术积累。转为开发gprs服务器之后,只不过是连接端从Pc变成了gprs设备,本质上还是走sockets,在断线处理方面做些额外的设计即可。最近我们的软件已经开始可以测试,是支持海量的gprs打印机进行在线打印的一个应用。
    测试地址:
    http://58.215.189.52/GPRS_Free_Test/开发工具:Mfc+sql  设计目标:在云服务器上支持海量的连接
      

  7.   

    http://58.215.189.52/GPRS_Free_Test/ 这个地址不能用了
    更正, 由于盛大云服务太差,已经更换了ip地址, 换到了这里http://184.169.160.55/GPRS_Free_Test/