[发明专利]消息订阅方法及装置在审
申请号: | 202010725994.9 | 申请日: | 2020-07-24 |
公开(公告)号: | CN111858099A | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 王珂伟 | 申请(专利权)人: | 海尔优家智能科技(北京)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;H04L29/08 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 刘旺贵 |
地址: | 100086 北京市海淀区知春*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息 订阅 方法 装置 | ||
本发明提供了一种消息订阅方法及装置,该方法包括:服务端根据客户端的消息订阅请求向平台发起消息订阅;所述服务端接收所述平台根据所述订阅返回的消息,并将所述消息下发至所述客户端;当在所述服务端出现消息积压时,所述服务端根据所述客户端所消费的消息量控制向所述平台订阅消息的速度。在本发明中,由于当服务端出现消息积压时,服务端可以根据客户端所消费的消息量控制向平台订阅消息的速度,因此,能够解决当积压到一定量时,服务端会出现服务故障或者服务内存故障,导致所有订阅故障的问题,达到服务端与客户端良性交互的效果。
技术领域
本发明涉及消息处理领域,具体而言,涉及一种消息订阅方法及装置。
背景技术
WebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信,位于OSI模型的应用层。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。
Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。该项目的目标是为处理实时数据提供一个统一、高吞吐、低延迟的平台。其持久化层本质上是一个“按照分布式事务日志架构的大规模发布/订阅消息队列”,这使它作为企业级基础设施来处理流式数据非常有价值。此外,Kafka可以通过Kafka Connect连接到外部系统(用于数据输入/输出),并提供了Kafka Streams——一个Java流式处理库。
使用websocket进行kafka数据订阅时,websocket服务端承担了客户端和kafka的数据通道,当数据量较大、客户端较多或者客户端消费慢时,所有数据将会积压到websocket服务端,会导致服务端挂死或者服务内存故障。
发明内容
本发明实施例提供了一种消息订阅方法及装置,以至少解决相关技术中数据订阅时,数据积压导致服务故障或者服务内存故障的问题。
根据本发明的一个实施例,提供了一种消息订阅方法,包括:服务端根据客户端的消息订阅请求向平台发起消息订阅;所述服务端接收所述平台根据所述订阅返回的消息,并将所述消息下发至所述客户端;当在所述服务端出现消息积压时,所述服务端根据所述客户端所消费的消息量控制向所述平台订阅消息的速度,使得向所述平台订阅消息的速度小于或等于所述客户端消费消息的速度。
可选地,所述服务端根据所述客户端所消费的消息量控制向所述平台订阅消息的速度可以包括:所述服务端暂停向所述平台发起消息订阅;所述服务端统计下发给所述客户端的消息量;当所述统计的消息量达到第一阈值时,所述服务端向所述平台提交第二阈值的消息订阅,其中,所述第一阈值大于或等于所述第二阈值。
可选地,所述服务端向所述平台提交第二阈值的消息订阅之前,还包括:所述服务端根据所述消息订阅请求的优先级和/或订阅消息类型选择向所述平台提交的第二阈值的消息订阅。
可选地,所述服务端向所述平台提交第二阈值的消息订阅之前,还包括:所述服务端根据所述消息订阅请求的优先级和/或订阅消息类型选择并丢弃部分消息订阅请求。
可选地,所述服务端根据所述客户端的消息订阅请求向所述平台发起消息订阅之前,还可包括:所述服务端接收所述客户端发起的消息订阅请求。
可选地,所述服务端根据所述客户端的消息订阅请求向所述平台发起消息订阅,可以包括:所述服务端携带请求参数向所述平台发起消息订阅。
可选地,在所述服务端将所述消息下发至所述客户端之前,还可包括:所述服务端根据所述客户端的消息订阅请求对返回的对应消息进行数据处理。
可选地,所述服务端为websocket服务端,所述客服端为websocket客户端,所述平台为kafka平台。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海尔优家智能科技(北京)有限公司,未经海尔优家智能科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010725994.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:机械臂
- 下一篇:一种具有警示作用的抗风浪疏浚管