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

最近公司正在做一个项目,该项目的客户端应用相当广泛,类似与QQ这样的项目。其中有一项要求服务端与普通用户的客户端程序能适时互动。当服务端系统状态有变化时,能及时通知所有在线的用户更新数据。由于客户端用户数量群较大,有上千万的用户规模,所以目前选择的各种方案都有优缺点。结一下比较可行的方法主要有以下几种:

1、通过UDPsocket方式,实现服务端与客户端通讯。这种方式优缺点就不说了。

2、能过tcp/ipsocket方式,实现服务端与客户端通讯。这种方式缺点就是大用户量的soket连接占用服务器系统资源,同时对已经注销的用户连接也不好判断。

3、通过java消息机制实现消息订阅方式,来实现服务端向客户端消息的及时通知。但是这种方式在夸平台方面存在弊端,同时对上千万用户级别规模的性能也不清楚。

请教各位有什么更好的办法实现?

相关推荐