`
cljhyjs
  • 浏览: 20858 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

讨论一下大用户量应用客户端与服务器通讯技术方案选择

阅读更多
   最近公司正在做一个项目,该项目的客户端应用相当广泛,类似与QQ这样的项目。其中有一项要求服务端与普通用户的客户端程序能适时互动。当服务端系统状态有变化时,能及时通知所有在线的用户更新数据。由于客户端用户数量群较大,有上千万的用户规模,所以目前选择的各种方案都有优缺点。结一下比较可行的方法主要有以下几种:
    1、通过UDP socket方式,实现服务端与客户端通讯。这种方式优缺点就不说了。
    2、能过tcp/ip socket方式,实现服务端与客户端通讯。这种方式缺点就是大用户量的soket连接占用服务器系统资源,同时对已经注销的用户连接也不好判断。
    3、通过java 消息机制 实现消息订阅方式,来实现服务端向客户端消息的及时通知。但是这种方式在夸平台方面存在弊端,同时对上千万用户级别规模的性能也不清楚。
   
    请教各位有什么更好的办法实现?
  
分享到:
评论
3 楼 jiyanliang 2008-04-26  
cljhyjs 写道
   最近公司正在做一个项目,该项目的客户端应用相当广泛,类似与QQ这样的项目。其中有一项要求服务端与普通用户的客户端程序能适时互动。当服务端系统状态有变化时,能及时通知所有在线的用户更新数据。由于客户端用户数量群较大,有上千万的用户规模,所以目前选择的各种方案都有优缺点。结一下比较可行的方法主要有以下几种:
    1、通过UDP socket方式,实现服务端与客户端通讯。这种方式优缺点就不说了。
    2、能过tcp/ip socket方式,实现服务端与客户端通讯。这种方式缺点就是大用户量的soket连接占用服务器系统资源,同时对已经注销的用户连接也不好判断。
    3、通过java 消息机制 实现消息订阅方式,来实现服务端向客户端消息的及时通知。但是这种方式在夸平台方面存在弊端,同时对上千万用户级别规模的性能也不清楚。
   
    请教各位有什么更好的办法实现?
  

这些性能要求有些类似于炒股、炒黄金的软件。
LZ可以参考一下这些软件的解决方案阿!
2 楼 ydsoft 2008-04-26  
用UDP,客户端定时发送心跳包到服务器避免路由器删除NAT的SESSION,需要发消息的话,服务器广播一下就可以
1 楼 cljhyjs 2008-04-25  
没人回答,自己up一下!看了banq的关于建立高性能聊天室文章,似有收获

相关推荐

Global site tag (gtag.js) - Google Analytics