[发明专利]一种分布式Web即时消息发送系统和方法在审
申请号: | 201810031183.1 | 申请日: | 2018-01-12 |
公开(公告)号: | CN108200184A | 公开(公告)日: | 2018-06-22 |
发明(设计)人: | 蔡卫卫 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/58 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 韩月娥 |
地址: | 450000 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务节点 客户端 即时消息发送 消息发 服务器 发送 消息队列技术 访问客户端 客户端访问 客户端消息 消息发送器 消息转发器 在服务节点 订阅消息 服务产品 消费消息 消息队列 直接发送 复用 队列 部署 配合 应用 保证 访问 | ||
本发明公开一种分布式Web即时消息发送系统和方法,涉及Web应用技术,Web应用部署多个服务节点时,通过在服务节点中使用消息发送器、消息消费者、消息转发器配合WebSocket及消息队列技术,某个客户端访问Web应用时,其连接的服务节点通过WebSocket直接发送消息给客户端,同时消息发送到消息队列中,其他所有服务节点消费消息队列中消息,然后把消息发送给连接到此服务节点的客户端,使访问分布式Web应用的所有客户端能够接收到所有服务节点发送的消息。本发明保证访问客户端能够准确订阅消息,并接收到其连接的服务器及其他服务器上发送的消息,防止客户端消息丢失;能够应用于IOP平台及其他服务产品,具有很好的复用价值。
技术领域
本发明涉及Web应用技术,具体的说是一种分布式Web即时消息发送系统和方法。
背景技术
Web页面即时通讯多采用WebSocket,由服务端将消息推送给Web浏览器。WebSocket协议是基于TCP的一种网络协议,它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端。Web页面即时通讯在单个服务节点的情况下是有效的,能够正常通讯的。
但是当今Web应用由于大规模、大用户量、高并发的需求,需要分布式部署,包含多个服务节点,而一个客户端(Web浏览器)访问应用的时候,只会连接其中一个服务节点(比如服务节点1),那么其他服务节点(比如服务节点2、服务节点3)上产生的消息则无法发送给这个客户端,导致这个客户端只能接收到部分消息,如附图1所示。这种情况下,可能会造成Web应用中访问客户端消息丢失。
发明内容
本发明针对目前技术发展的需求和不足之处,提供一种分布式Web即时消息发送系统和方法。
本发明所述一种分布式Web即时消息发送系统,解决上述技术问题采用的技术方案如下:所述分布式Web即时消息发送系统,其系统架构包括:
客户端,能够连接上Web应用中的一个服务节点,接收Web应用中所有服务节点发送过来的消息;
消息队列服务器,用于接收所有服务节点发送的消息,临时存放消息;
Web应用中若干服务节点,通过WebSocket直接向与其连接的客户端发送消息,并将消息发送给消息队列服务器;服务节点能够消费消息队列服务器中存放的其他服务节点的消息,并将消息发送给连接到其上的客户端。
进一步,Web应用中的所有服务节点,均设置了消息发送器、消息转发器、消息消费者。
进一步,所述消息发送器,用于服务节点通过WebSocket直接发送消息给与其连接的客户端。
进一步,所述消息转发器,用于服务节点将消息发送给消息队列服务器。
进一步,所述消息消费者,连接于所述消息队列服务器,用于服务节点消费消息队列服务器中存放的其他服务节点的消息,并负责对消息进行处理,转发消息给消息发送器。
本发明提出的一种分布式Web即时消息发送方法,具体实现流程包括:
步骤1、客户端访问Web应用中服务节点,客户端连接一个服务节点,服务节点通过WebSocket直接发送消息给与其连接的客户端;
步骤2、服务节点将消息发送到消息队列服务器中临时存放;
步骤3、服务节点消费消息队列服务器中存放的其他服务节点的消息,并将消息发送给与其连接的客户端;
步骤4、其他服务节点消费消息队列服务器中存放的该服务节点的消息,并将消息发送给与其连接的客户端。
进一步,所述步骤1:所述服务节点通过其消息发送器直接发送消息给客户端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810031183.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种教育云信息的推送方法和推送系统
- 下一篇:一种实现负载均衡的方法及装置