`
cljhyjs
  • 浏览: 21217 次
  • 性别: 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的关于建立高性能聊天室文章,似有收获

相关推荐

    即时通讯视频通讯解决方案

    “AnyChat即时通讯平台”是一款专为满足企业级即时通讯需求而设计的跨平台解决方案,它结合了H.264视频编码标准、AAC音频编码标准以及P2P技术,实现了高清视频通讯。该平台由广州佰锐网络科技有限公司研发,旨在提供...

    电信设备-一种即时通讯客户端的数据处理方法、装置、终端及系统.zip

    最后,系统层面,这种即时通讯方案可能涉及到服务器端的架构设计、分布式系统、数据库管理、安全策略等。服务器端需要处理大量并发连接,保证消息的实时性,同时进行负载均衡和故障恢复,以提供稳定的服务。数据库...

    基于thinkphp5.1和workerman框架,HTML5的websocket即时通讯.zip

    在这个项目中,WebSocket被用来实现即时通讯功能,用户可以通过网页浏览器与服务器进行实时交流,无需刷新页面即可接收到新消息。 6. **项目结构**: 根据压缩包中的“workerman.chat.04.com-master”文件名推测,这...

    金谷企业即时通讯系统

    8. **可扩展性与稳定性**:企业级系统需要处理大量并发用户,因此金谷企业即时通讯系统应该具有良好的可扩展性和高可用性设计,如负载均衡、分布式部署等,以保证在用户量增长时依然能稳定运行。 9. **自建平台的...

    即时通讯PHP+UNIAPP+MYSQL+MONGODB.rar

    即时通讯系统是现代互联网应用中的重要组成部分,它允许用户实时地进行信息交换,如同步聊天、群组讨论、在线客服等。在这个项目中,我们看到一个基于PHP、UNIAPP、MYSQL和MONGODB构建的即时通讯系统。接下来,我们...

    win32下的一个winsock即时通讯程序

    1. 即时通讯客户端.exe:这是即时通讯系统的客户端程序,用户通过这个程序与其他在线用户进行交互。它可能包含了登录、聊天室、一对一私聊、文件传输等基本功能的实现,通过Winsock与服务器进行数据交换。 2. 即时...

    基于FMS的高清视频服务器的研究.pdf

    传统视频系统开发涉及编码、通讯技术和服务器客户端环境构建等多个复杂环节,成本高昂且工作量大。 传统的视频点播系统通常分为集中式和P2P模式。集中式服务器在用户数量增加时容易出现响应率低、播放不流畅的问题...

    swoole php websocket 聊天通讯

    在IT行业中,Websocket是一种全双工的通信协议,它允许服务器和客户端实时、双向地交换数据,极大地提升了网络应用的交互性。本项目“swoole php websocket 聊天通讯”就是利用PHP和Swoole扩展来构建一个基于...

    MyQQ.rar_QQ 服务器端_企业QQ系统

    "企业QQ系统 有服务器端和客户端" 这句话告诉我们,企业QQ不仅仅是一个用户可以直接使用的应用程序(客户端),它还包含了一个服务器端,这是支撑整个系统运行的基础。服务器端主要负责处理来自各个客户端的请求,...

    即时通讯源码

    虽然不是Java,但其设计理念和关键技术与Java即时通讯系统类似,包括网络通信、消息处理、用户交互和安全性等方面。 综上所述,构建一个即时通讯系统涉及多个层面的技术,从协议设计到客户端和服务端实现,再到安全...

    基于Ajax技术的网上作业系统研究.pdf

    通过采用Ajax技术,可以实现浏览器与服务器的异步通讯,减少页面重载次数和用户等待时间。文章首先介绍了Ajax技术的概念和特点,然后详细介绍了DWR(Direct Web Remoting)技术的应用, finally,文章介绍了基于Ajax...

    Multiclient-chat:使用 nodeJS 和 Redis 的多客户端聊天服务器

    3. **WebSocket**:可能在项目中用于创建持久的双向通信通道,使得服务器可以主动向客户端推送消息,实现即时通讯。 4. **EventEmitter**:Node.js中的一个核心模块,用于事件驱动编程,通常用于服务器和客户端之间...

    ip多播组讨论会系统论文

    详细设计涵盖了底层通讯类、数据类的编码方案,以及服务器和客户端的交互逻辑。例如,发送数据的确认消息编码方案确保了数据传输的准确性和完整性,而检查用户是否在线的算法则优化了用户体验。 **7. 功能与界面...

    网络游戏-通讯网络中的消息推送方法和装置.zip

    在实际应用中,开发者会根据游戏类型和用户规模选择合适的连接策略。 接着,我们讨论消息推送的优化手段。一种常见的方法是使用消息队列,将待发送的消息暂存,然后按优先级或时间顺序进行分发,以降低服务器压力。...

    企业即时通讯

    企业即时通讯,是一种专为企业内部通信设计的工具,类似于个人使用的QQ等社交软件,但其功能和使用场景更侧重...同时,利用Oracle的技术优势,确保了系统在大数据量下的性能和稳定性,满足了企业对信息化建设的高要求。

    WoChat, 即时通讯练手(基于xmpp、leancloud、环信).zip

    在WoChat项目中,环信可能被用作一个便捷的IM解决方案,为开发者提供了现成的接口和工具,减少了自行搭建和维护IM服务器的工作量。通过学习环信的API和文档,开发者可以快速掌握即时通讯的核心功能,如创建聊天室、...

    电信设备-即时通信中指示联系人对象方位的方法、客户端及系统.zip

    "电信设备-即时通信中指示联系人对象方位的方法、客户端及系统"的主题涵盖了这一领域的核心技术与应用,旨在提供一种高效且精确的位置指示方案。这个主题包括了方法、客户端软件以及整体系统的构建,以便于用户在...

    OPC与Wincc 通讯的几篇论文合计

    OPC(OLE for Process Control)是一种工业自动化领域的通信标准,它...这些论文和文档深入讨论了OPC、VB和Wincc在不同工业环境中的应用,为读者提供了理论知识和实际案例,有助于理解和实施OPC与Wincc的通信解决方案。

    OA办公系统解决方案.pdf

    B/S+C/S(Browser/Server+Client/Server)表明解决方案可能结合了浏览器/服务器和客户端/服务器两种架构,以适应不同类型的办公需求。 BBS(Bulletin Board System,公告板系统)通常指的是系统中的讨论区或者论坛...

Global site tag (gtag.js) - Google Analytics