CN111970315A - 推送消息的方法、装置及系统 - Google Patents
推送消息的方法、装置及系统 Download PDFInfo
- Publication number
- CN111970315A CN111970315A CN201910420414.2A CN201910420414A CN111970315A CN 111970315 A CN111970315 A CN 111970315A CN 201910420414 A CN201910420414 A CN 201910420414A CN 111970315 A CN111970315 A CN 111970315A
- Authority
- CN
- China
- Prior art keywords
- target
- push server
- target client
- message
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Abstract
本发明公开了一种推送消息的方法、装置及系统,涉及通信技术领域,其目的在于避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生。本发明的方法包括:接收消息推送请求,并根据消息推送请求确定目标客户端对应的唯一标识及待推送消息;根据目标客户端对应的唯一标识,在数据库中查找与目标客户端之间建立有websocket连接的目标推送服务器;将待推送消息及目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至所述目标客户端。本发明适用于推送服务器对浏览器客户端进行消息推送的过程中。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种推送消息的方法、装置及系统。
背景技术
随着科学技术的不断发展,互联网技术越来越成熟,浏览器的普及率也越来越高,通过浏览器浏览信息已经成为人们日常生活中不可或缺的一部分。其中,WebSocket通信协议是基于TCP通信协议的一种新网络协议,其实现了浏览器客户端与服务器全双工通信,因此,基于WebSocket通讯协议建立服务器与浏览器客户端之间的websocket连接,便可实现服务器主动向浏览器客户端主动推送消息,即服务器在接收到消息推送请求后,可以通过与浏览器客户端之间的websocket连接将待推送消息推送至浏览器客户端中。
发明人在实现本发明的过程中,发现现有技术中存在以下技术问题,当服务器同一时间接收到大量消息推送请求时,会导致该服务器宕机,从而使得与该服务器之间建立有websocket连接的浏览器客户端会断开两者之间的websocket连接,进而会导致该服务器无法将待推送消息推送至其对应的浏览器客户端中。
发明内容
有鉴于此,本发明提供的推送消息的方法、装置及系统,主要目的在于避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生。
为了解决上述问题,本发明主要提供如下技术方案:
第一方面,本发明提供了一种推送消息的方法,该方法包括:
接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
根据所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
可选的,在所述接收消息推送请求之前,所述方法还包括:
获取每个推送服务器对应的服务列表及负载数量;
当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
可选的,在所述获取每个推送服务器对应的服务列表及负载数量之后,所述方法还包括:
将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
可选的,所述登录请求中包含身份验证信息;所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
对所述身份验证信息进行鉴权处理;
当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
第二方面,本发明提供了一种推送消息的方法,该方法包括:
创建消息队列;
监听所述消息队列,当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
可选的,所述方法还包括:
当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
更新负载数量,并将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
可选的,所述方法还包括:
当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除,并更新负载数量。
可选的,所述创建消息队列,包括:
将IP地址和端口号作为队列名称,创建所述消息队列。
第三方面,本发明提供了一种管理服务器,包括:
接收单元,用于接收消息推送请求;
确定单元,用于根据所述接收单元接收的所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
查找单元,用于根据所述确定单元确定的所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
存放单元,用于将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
可选的,所述管理服务器还包括:
获取单元,用于在所述接收单元接收消息推送请求之前,获取每个推送服务器对应的服务列表及负载数量;
发送单元,用于当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
可选的,所述管理服务器还包括:
缓存单元,用于在所述获取单元获取每个推送服务器对应的服务列表及负载数量之后,将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
所述发送单元包括:
获取模块,用于在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
第一发送模块,用于将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
可选的,所述登录请求中包含身份验证信息;所述发送单元包括:
鉴权模块,用于对所述身份验证信息进行鉴权处理;
第二发送模块,用于当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
第四方面,本发明提供了一种目标推送服务器,包括:
创建单元,用于创建消息队列;
监听单元,用于监听所述创建单元创建的所述消息队列;
推送单元,用于当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
可选的,所述目标推送服务器还包括:
存储单元,用于当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
第一更新单元,用于更新负载数量;
发送单元,用于将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
可选的,所述目标推送服务器还包括:
删除单元,用于当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除;
第二更新单元,用于更新负载数量。
可选的,所述创建单元包括:
创建模块,用于将IP地址和端口号作为队列名称,创建所述消息队列。
第五方面,本发明提供了一种推送消息的系统,包括:如上第三方面所述的管理服务器、如上第四方面所述的目标推送服务器及目标客户端,
所述目标推送服务器,用于创建消息队列,并监听所述消息队列;
所述管理服务器,用于接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;根据所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的所述目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中;
所述目标推送服务器,还用于当在所述消息队列中监听到所述待推送消息和所述目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
可选的,所述管理服务器,还用于获取每个推送服务器对应的服务列表及负载数量;
所述目标客户端,用于向所述管理服务器发送登录请求;
所述管理服务器,还用于当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端;
所述目标客户端,还用于接收每个所述推送服务器对应的服务列表及负载数量,并在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,以及根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
可选的,所述目标推送服务器,还用于当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;更新负载数量,并将更新后的负载数量发送至所述目标客户端;
所述目标客户端,还用于接收所述更新后的负载数量;当断开与所述目标推送服务器之间的websocket连接时,根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
第六方面,本发明的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的推送消息的方法。
第七方面,本发明的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第二方面所述的推送消息的方法。
第八方面,本发明的实施例提供了一种管理服务器,所述管理服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面所述的推送消息的方法。
第九方面,本发明的实施例提供了一种目标推送服务器,所述目标推送服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第二方面所述的推送消息的方法。
借由上述技术方案,本发明提供的技术方案至少具有下列优点:
本发明提供一种推送消息的方法、装置及系统,与现有技术中由推送服务器接收消息推送请求,推送服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端后,通过与该浏览器客户端之间的websocket连接将待推送消息推送至该浏览器客户端中相比,本发明能够由管理服务器接收消息推送请求,管理服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端(即目标客户端)对应的唯一标识以及待推送的消息后,根据目标客户端对应的唯一标识确定与目标客户端之间建立有websocket连接的推送服务器(即目标推送服务器),并将目标客户端对应的唯一标识及待推送消息存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。由于,是由管理服务器接收消息推送请求,并且,管理服务器在接收到消息推送请求后,是将目标客户端对应的唯一标识及待推送消息存放至目标客户端对应的目标推送服务器的消息队列中,从而使得目标推送服务器在其对应的消息队列中监听到目标客户端对应的唯一标识及待推送消息后,会主动在其对应的消息队列中获取目标客户端对应的唯一标识及待推送消息,并通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端,因此,可以避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生;并且,即使是由于管理服务器同一时间接收到大量消息推送请求,而导致管理服务器宕机,也不会使得与推送服务器之间建立有websocket连接的浏览器客户端断开两者之间的websocket连接,从而推送服务器仍然可以在其对应的消息队列中获取得到待推送消息后,通过与浏览器客户端之间的websocket连接将待推送消息推送至浏览器客户端中。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的第一种推送消息的方法流程图;
图2示出了本发明实施例提供的第二种推送消息的方法流程图;
图3示出了本发明实施例提供的第三种推送消息的方法流程图;
图4示出了本发明实施例提供的第四种推送消息的方法流程图;
图5示出了本发明实施例提供的第五种推送消息的方法流程图;
图6示出了本发明实施例提供的第一种管理服务器的组成框图;
图7示出了本发明实施例提供的第二种管理服务器的组成框图;
图8示出了本发明实施例提供的第一种目标推送服务器的组成框图;
图9示出了本发明实施例提供的第二种目标推送服务器的组成框图;
图10示出了本发明实施例提供的一种推送消息的系统的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
第一方面,本发明实施例提供了第一种推送消息的方法,该方法应用于管理服务器侧,具体如图1所示,该方法包括:
101、接收消息推送请求,并根据消息推送请求确定目标客户端对应的唯一标识及待推送消息。
其中,管理服务器具体可以为:运行Servlet程序的Tomcat服务器;其中,服务器集群中包含一个或多个管理服务器以及多个推送服务器,每个管理服务器对应多个推送服务器,每个推送服务器可以与多个浏览器客户端建立websocket连接。
在本发明实施例中,当管理服务器接收到某个已登录的浏览器客户端发送的消息推送请求后,管理服务器需要根据接收到的消息推送请求确定需要进行消息推送的浏览器客户端(即目标客户端)对应的唯一标识以及待推送的消息。
具体的,在本步骤中,当消息推送请求中携带有目标客户端对应的唯一标识以及待推送消息时,管理服务器可以直接在消息推送请求中提取出目标客户端对应的唯一标识以及待推送消息;当消息推送请求中携带有目标客户端对应的相关信息以及待推送消息时,管理服务器可以先在消息推广请求中提取目标客户端对应的相关信息以及待推送消息,然后根据待推送消息对应的相关信息确定目标客户端对应的唯一标识,其中,目标客户端对应的相关信息可以但不限于为:包含目标客户端的群组对应的唯一标识等等。
102、根据目标客户端对应的唯一标识,在数据库中查找与目标客户端之间建立有websocket连接的目标推送服务器。
其中,由于,当推送服务器成功建立与浏览器客户端之间的websocket连接时,推送服务器会将自身的IP地址、端口号与该浏览器客户端对应的唯一标识之间的映射关系存储至数据库中,因此,数据库中存储有目标推送服务器(与目标客户端之间建立有websocket连接的推送服务器)的IP地址、端口号与目标客户端对应的唯一标识之间的映射关系;数据库具体可以为:Redis数据库。
在本发明实施例中,管理服务器在获取得到目标客户端对应的唯一标识后,根据目标客户端对应的唯一标识便可在数据库中查找得到目标推送服务器对应的IP地址和端口号,即管理服务器根据目标客户端对应的唯一标识便可在数据库中查找得到目标推送服务器。
103、将待推送消息及目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
在本发明实施例中,服务器集群中的每个推送服务器都会预先根据自身的IP地址和端口号创建消息队列,因此,管理服务器在根据目标客户端对应的唯一标识在数据库中查找得到目标推送服务器后,便可根据目标推送服务器对应的IP地址和端口号确定目标推送服务器对应的消息队列,从而可以将待推送消息和目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中,以便后续目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
本发明实施例提供一种推送消息的方法,与现有技术中由推送服务器接收消息推送请求,推送服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端后,通过与该浏览器客户端之间的websocket连接将待推送消息推送至该浏览器客户端中相比,本发明实施例能够由管理服务器接收消息推送请求,管理服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端(即目标客户端)对应的唯一标识以及待推送的消息后,根据目标客户端对应的唯一标识确定与目标客户端之间建立有websocket连接的推送服务器(即目标推送服务器),并将目标客户端对应的唯一标识及待推送消息存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。由于,是由管理服务器接收消息推送请求,并且,管理服务器在接收到消息推送请求后,是将目标客户端对应的唯一标识及待推送消息存放至目标客户端对应的目标推送服务器的消息队列中,从而使得目标推送服务器在其对应的消息队列中监听到目标客户端对应的唯一标识及待推送消息后,会主动在其对应的消息队列中获取目标客户端对应的唯一标识及待推送消息,并通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端,因此,可以避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生;并且,即使是由于管理服务器同一时间接收到大量消息推送请求,而导致管理服务器宕机,也不会使得与推送服务器之间建立有websocket连接的浏览器客户端断开两者之间的websocket连接,从而推送服务器仍然可以在其对应的消息队列中获取得到待推送消息后,通过与浏览器客户端之间的websocket连接将待推送消息推送至浏览器客户端中。
以下为了更加详细地说明,第二方面,本发明实施例提供了第二种推送消息的方法,该方法应用于管理服务器侧,具体如图2所示,该方法包括:
201、获取每个推送服务器对应的服务列表及负载数量。
其中,推送服务器对应的服务列表具体可以为:推送服务器对应的IP地址、端口号等等;推送服务器对应的负载数量为与该推送服务器建立有websocket连接的浏览器客户端的数量。
在本发明实施例中,管理服务器为了保证新登录的浏览器客户端与负载数量最小的推送服务器建立websocket连接,管理服务器需要实时获取其对应的每个推送服务器的服务列表及负载数量。
具体的,在本步骤中,可以在推送服务器启动时,使推送服务器连接并注册到Zookeeper软件中,管理服务器通过连接Zookeeper软件,便可实时获取其对应的每个推送服务器的服务列表;由于,当推送服务器成功建立与浏览器客户端之间的websocket连接时,推送服务器会将自身的IP地址、端口号与该浏览器客户端对应的唯一标识之间的映射关系存储至数据库中,因此,管理服务器可以在数据库中实时获取其对应的每个推送服务器的负载数量,但不限于此。
202、当接收到目标客户端发送的登录请求时,将每个推送服务器对应的服务列表及负载数量发送至目标客户端,以便目标客户端在将每个推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个推送服务器对应的负载数量确定目标推送服务器,并根据目标推送服务器对应的服务列表建立与目标推送服务器之间的websocket连接。
在本发明实施例中,当管理服务器接收到目标客户端发送的登录请求时,管理服务器便可将在步骤201中获取得到的每个推送服务器对应的服务列表及负载数量发送至目标客户端中。目标客户端在接收到每个推送服务器对应的服务列表及负载数量后,首先,将每个推送服务器对应的服务列表及负载数量缓存至本地存储空间中,其中,目标客户端可以将每个推送服务器对应的服务列表及负载数量缓存至Cookie中或缓存至SessionStorage中;然后,目标客户端根据每个推送服务器对应的负载数量确定目标推送服务器,即目标客户端根据每个推送服务器对应的负载数量确定负载数量最小的推送服务器,将该负载数量最小的推送服务器确定为目标推送服务器;最后,目标客户端根据目标推送服务器对应的服务列表(即目标推送服务器对应的IP地址和端口号)建立与目标推送服务器之间的websocket连接。需要进行说明的是,在实际应用过程中,当目标客户端的网络发生故障或者目标推送服务器宕机,导致目标客户端断开与目标推送服务器之间的websocket连接时,目标客户端可以根据本地存储空间中缓存的每个推送服务器对应的负载数量,重新确定一个负载数量最小的推送服务器,并根据该推送服务器对应的服务列表建立与该推送服务器之间的websocket连接。
进一步的,在本发明实施例中,当管理服务器对应的某个推送服务器宕机时,管理服务器会将该推送服务器宕机的消息存放至其他正常工作的推送服务器的消息队列中,以便每个正常工作的推送服务器将该消息推送至与其建立有websocket连接的浏览器客户端中,从而使得浏览器客户端可以实时更新缓存在本地存储空间中的每个推送服务器对应的服务列表及负载数量。
进一步的,在本发明实施例中,管理服务器在获取得到其对应的每个推送服务器的服务列表及负载数量后,会将每个推送服务器对应的服务列表及负载数量缓存至本地存储空间中,当管理服务器接收到目标客户端发送的登录请求时,管理服务器会先在本地存储空间中获取已缓存的每个推送服务器对应的服务列表及负载数量,然后再将每个推送服务器对应的服务列表及负载数量发送至目标客户端中。
进一步的,在本发明实施例中,管理服务器接收到的登录请求中还包含目标客户端对应的身份验证信息,管理服务器在接收到目标客户端发送的登录请求后,需要对该登录请求中包含的身份验证信息进行鉴权处理,以确定目标客户端是否有权限登录管理服务器,当管理服务器对目标客户端对应的身份验证信息鉴权成功时,管理服务器便会将其对应的每个推送服务器的服务列表及负载数量发送至目标客户端中。
需要进行说明的是,在实际应用过程中,管理服务器在接收到任意一个浏览器客户端发送的登录请求后,均会采用步骤202中所述的方法,将其对应的每个推送服务器的服务列表及负载数量发送至该浏览器客户端中,以便该浏览器客户端采用步骤202中所述的方法,建立与负载数量最小的推送服务器之间的websocket连接。
203、接收消息推送请求,并根据消息推送请求确定目标客户端对应的唯一标识及待推送消息。
其中,关于步骤203、接收消息推送请求,并根据消息推送请求确定目标客户端对应的唯一标识及待推送消息,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
204、根据目标客户端对应的唯一标识,在数据库中查找与目标客户端之间建立有websocket连接的目标推送服务器。
其中,关于步骤204、根据目标客户端对应的唯一标识,在数据库中查找与目标客户端之间建立有websocket连接的目标推送服务器,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
205、将待推送消息及目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
其中,关于步骤205、将待推送消息及目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
进一步的,第三方面,本发明实施例还提供了第三种推送消息的方法,该方法应用于目标推送服务器侧,如图3所示,该方法包括:
301、创建消息队列,并监听消息队列。
其中,目标推送服务器具体可以为:运行由netty编程框架编写的程序的服务器。
在本发明实施例中,为了避免由于推送服务器同一时间接收到大量的消息推送请求,而导致推送服务器宕机的情况发生,需要由管理服务器接收消息推送请求,管理服务器在根据接收到的消息推送请求确定需要进行消息推送的浏览器客户端(即目标客户端)对应的唯一标识以及待推送消息后,会根据目标客户端对应的唯一标识确定与目标客户端建立有websocket连接的推送服务器(即目标推送服务器),并将目标客户端对应的唯一标识以及待推送消息存放至目标推送服务器对应的消息队列中,以便目标推送服务器在其对应的消息队列中监听到目标客户端对应的唯一标识以及待推送消息后,通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端中,因此,为了保证管理服务器及时地将目标客户端对应的唯一标识和待推送消息下发至目标推送服务器,目标推送服务器需要预先创建自身对应的消息队列,并需要实时监听自身对应的消息队列。具体的,在本步骤中,目标推送服务器可以通过Rabbitmq软件创建自身对应的消息队列,但不限于此。
302、当在消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
在本发明实施例中,目标推送服务器在创建完成自身对应的消息队列后,便会实时监听自身对应的消息队列,当目标推送服务器在自身对应的消息队列中,监听到管理服务器存放的待推送消息和目标客户端对应的唯一标识时,目标推送服务器便可通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
以下为了更加详细地说明,第四方面,本发明实施例提供了第四种推送消息的方法,该方法应用于目标推送服务器侧,具体如图4所示,该方法包括:
401、将IP地址和端口号作为队列名称,创建消息队列。
在本发明实施例中,由于,当目标推送服务器成功建立与目标客户端之间的websocket连接时,目标推送服务器会将自身的IP地址、端口号与目标客户端对应的唯一标识之间的映射关系存储至数据库中,因此,为了使得管理服务器在根据目标客户端对应的唯一标识在数据库中查找得到目标推送服务器对应的IP地址和端口号后,根据目标推送服务器对应的IP地址和端口号便可确定目标推送服务器对应的消息队列,需要目标服务器在创建自身对应的消息队列时,将IP地址和端口号作为队列名称,来创建自身对应的消息队列。
402、监听消息队列。
其中,关于402、监听消息队列,可以参考图3对应部分的描述,本发明实施例此处将不再赘述。
403、当在消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
其中,关于403、当在消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端,可以参考图3对应部分的描述,本发明实施例此处将不再赘述。
进一步的,在本发明实施例中,由于,目标服务器在创建自身对应的消息队列时,是将IP地址和端口号作为队列名称,来创建自身对应的消息队列的,因此,当目标推送服务器成功建立与目标客户端之间的websocket连接时,目标推送服务器需要将自身的IP地址、端口号与目标客户端对应的唯一标识之间的映射关系存储至数据库中,以便管理服务器在根据接收到的消息推送请求确定需要进行消息推送的浏览器客户端为目标客户端后,能够根据目标客户端对应的唯一标识在数据库中查找得到目标推送服务器对应的IP地址和端口号,从而可以根据目标推送服务器对应的IP地址和端口号确定目标推送服务器对应的消息队列。此外,目标推送服务器在将自身的IP地址、端口号与目标客户端对应的唯一标识之间的映射关系存储至数据库中后,还会更新自身的负载数量,并将更新后的负载数量发送至目标客户端中,以便目标客户端在接收到目标推送服务器对应的更新后负载数量后,使用目标推送服务器对应的更新后的负载数量更新缓存在本地存储空间中的每个推送服务器对应的服务列表及负载数量(目标客户端在成功登录管理服务器后,管理服务器会将其对应的每个推送服务器对应的服务列表及负载数量发送至目标客户端中,目标客户端会将接收到的每个推送服务器对应的服务列表及负载数量缓存至本地存储空间中),从而使得当目标客户端的网络发生故障或者目标推送服务器宕机,导致目标客户端断开与目标推送服务器之间的websocket连接时,目标客户端可以根据本地存储空间中缓存的每个推送服务器对应的负载数量及目标推送服务器对应的、更新后的负载数量,重新确定一个负载数量最小的推送服务器(即待连接推送服务器),并根据待连接推送服务器对应的服务列表建立与待连接推送服务器之间的websocket连接。具体的,在本步骤中,当数据库为Redis数据库时,目标推送服务器可以将自身的IP地址和端口号作为Key、将目标客户端对应的唯一标识作为Value存储至数据库中,但不限于此。
进一步的,在本发明实施例中,当目标推送服务器断开与目标客户端之间的websocket连接时,目标推送服务器会将存储在数据库中的、目标推送服务器对应的IP地址、端口号与目标客户端对应的唯一标识之间的映射关系删除,以及更新自身的负载数量,从而保证数据库中存储的数据的准确性,以及保证自身的负载数量为与自身建立有websocket连接的浏览器客户端的数量。
上述实施例已分别详细阐述了管理服务器侧和目标推送服务器侧进行消息推送的过程,以下提供一个实施例,用于说明管理服务器和目标推送服务器的交互关系。如图5所示,图5示出了本发明实施例提供的第五种推送消息的方法,该方法包括:
501、目标推送服务器将IP地址和端口号作为队列名称,创建消息队列。
502、目标推送服务器实时监听其对应的消息队列。
503、管理服务器获取每个推送服务器对应的服务列表及负载数量。
504、当管理服务器接收到目标客户端发送的登录请求时,管理服务器将每个推送服务器对应的服务列表及负载数量发送至目标客户端,以便目标客户端在将每个推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个推送服务器对应的负载数量确定目标推送服务器,并根据目标推送服务器对应的服务列表建立与目标推送服务器之间的websocket连接。
505、管理服务器接收消息推送请求,并根据消息推送请求确定目标客户端对应的唯一标识及待推送消息。
506、管理服务器根据目标客户端对应的唯一标识,在数据库中查找与目标客户端之间建立有websocket连接的目标推送服务器。
507、管理服务器将待推送消息及目标客户端对应的唯一标识存放至目标推送服务器对应的消息队列中。
508、当目标推送服务器在其对应的消息队列中,监听到待推送消息和目标客户端对应的唯一标识时,通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。
其中,关于步骤501至步骤508的描述,请参考上述相关详细描述,本发明实施例在此不再进行一一赘述。
为了实现上述目的,根据本发明的第五方面,本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述第一方面或第二方面所述的推送消息的方法。
为了实现上述目的,根据本发明的第六方面,本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述第三方面或第四方面所述的推送消息的方法。
为了实现上述目的,根据本发明的第七方面,本发明实施例还提供了一种管理服务器,所述管理服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述第一方面或第二方面所述的推送消息的方法。
为了实现上述目的,根据本发明的第八方面,本发明实施例还提供了一种目标推送服务器,所述目标推送服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述第三方面或第四方面所述的推送消息的方法。
进一步的,作为对上述图1及图2所示方法的实现,本发明另一实施例还提供了一种管理服务器。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的管理服务器能够对应实现前述方法实施例中的全部内容。该管理服务器应用于避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生,具体如图6所示,该管理服务器包括:
接收单元61,用于接收消息推送请求;
确定单元62,用于根据接收单元61接收的所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
查找单元63,用于根据确定单元62确定的所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
存放单元64,用于将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
进一步的,如图7所示,该管理服务器还包括:
获取单元65,用于在接收单元61接收消息推送请求之前,获取每个推送服务器对应的服务列表及负载数量;
发送单元66,用于当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
进一步的,如图7所示,该管理服务器还包括:
缓存单元67,用于在所述获取单元65获取每个推送服务器对应的服务列表及负载数量之后,将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
发送单元66包括:
获取模块661,用于在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
第一发送模块662,用于将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
进一步的,如图7所示,所述登录请求中包含身份验证信息;发送单元66包括:
鉴权模块663,用于对所述身份验证信息进行鉴权处理;
第二发送模块664,用于当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
进一步的,作为对上述图3及图4所示方法的实现,本发明另一实施例还提供了一种目标推送服务器。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的目标推送服务器能够对应实现前述方法实施例中的全部内容。该目标推送服务器应用于避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生,具体如图8所示,该目标推送服务器包括:
创建单元71,用于创建消息队列;
监听单元72,用于监听创建单元71创建的所述消息队列;
推送单元73,用于当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
进一步的,如图9所示,该目标推送服务器还包括:
存储单元74,用于当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
第一更新单元75,用于更新负载数量;
发送单元76,用于将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
进一步的,如图9所示,该目标推送服务器还包括:
删除单元77,用于当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除;
第二更新单元78,用于更新负载数量。
进一步的,如图9所示,创建单元71包括:
创建模块711,用于将IP地址和端口号作为队列名称,创建所述消息队列。
进一步的,作为对上述方法的实现以及上述管理服务器、目标推送服务器的应用,本发明实施例还提供一种推送消息的系统,如图10所示,该系统包括:如图6或图7所示的管理服务器81、如图8或图9所示的目标推送服务器82及目标客户端83,
目标推送服务器82,用于创建消息队列,并监听所述消息队列;
管理服务器81,用于接收消息推送请求,并根据所述消息推送请求确定目标客户端83对应的唯一标识及待推送消息;根据目标客户端83对应的唯一标识,在数据库中查找与目标客户端83之间建立有websocket连接的目标推送服务器82,其中,所述数据库中存储有目标推送服务器82对应的IP地址、端口号与目标客户端83对应的唯一标识之间的映射关系;将所述待推送消息及目标客户端83对应的唯一标识存放至目标推送服务器82对应的消息队列中;
目标推送服务器82,还用于当在所述消息队列中监听到所述待推送消息和目标客户端83对应的唯一标识时,通过与目标客户端83之间的websocket连接将所述待推送消息推送至目标客户端83。
进一步的,管理服务器81,还用于获取每个推送服务器对应的服务列表及负载数量;
目标客户端83,用于向管理服务器81发送登录请求;
管理服务器81,还用于当接收到目标客户端83发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至目标客户端83;
目标客户端83,还用于接收每个所述推送服务器对应的服务列表及负载数量,并在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定目标推送服务器82,以及根据目标推送服务器82对应的服务列表建立与目标推送服务器82之间的websocket连接。
进一步的,目标推送服务器82,还用于当成功建立与目标客户端83之间的websocket连接时,将IP地址、端口号与目标客户端83对应的唯一标识之间的映射关系存储至数据库中;更新负载数量,并将更新后的负载数量发送至目标客户端83;
目标客户端83,还用于接收所述更新后的负载数量;当断开与目标推送服务器82之间的websocket连接时,根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及目标推送服务器82对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
本发明实施例提供一种推送消息的方法、装置及系统,与现有技术中由推送服务器接收消息推送请求,推送服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端后,通过与该浏览器客户端之间的websocket连接将待推送消息推送至该浏览器客户端中相比,本发明实施例能够由管理服务器接收消息推送请求,管理服务器在根据消息推送请求确定需要进行消息推送的浏览器客户端(即目标客户端)对应的唯一标识以及待推送的消息后,根据目标客户端对应的唯一标识确定与目标客户端之间建立有websocket连接的推送服务器(即目标推送服务器),并将目标客户端对应的唯一标识及待推送消息存放至目标推送服务器对应的消息队列中,以便目标推送服务器通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端。由于,是由管理服务器接收消息推送请求,并且,管理服务器在接收到消息推送请求后,是将目标客户端对应的唯一标识及待推送消息存放至目标客户端对应的目标推送服务器的消息队列中,从而使得目标推送服务器在其对应的消息队列中监听到目标客户端对应的唯一标识及待推送消息后,会主动在其对应的消息队列中获取目标客户端对应的唯一标识及待推送消息,并通过与目标客户端之间的websocket连接将待推送消息推送至目标客户端,因此,可以避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生;并且,即使是由于管理服务器同一时间接收到大量消息推送请求,而导致管理服务器宕机,也不会使得与推送服务器之间建立有websocket连接的浏览器客户端断开两者之间的websocket连接,从而推送服务器仍然可以在其对应的消息队列中获取得到待推送消息后,通过与浏览器客户端之间的websocket连接将待推送消息推送至浏览器客户端中。此外,目标客户端在成功登录管理服务器后,管理服务器会将其对应的每个推送服务器对应的服务列表及负载数量发送至目标客户端中,从而使得当目标客户端的网络发生故障或者目标推送服务器宕机,导致目标客户端断开与目标推送服务器之间的websocket连接时,目标客户端可以根据缓存的每个推送服务器对应的负载数量,重新确定一个负载数量最小的推送服务器,并根据该推送服务器对应的服务列表建立与该推送服务器之间的websocket连接。
所述管理服务器包括处理器和存储器,上述接收单元、确定单元、查找单元和存放单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
所述目标推送服务器包括处理器和存储器,上述创建单元、监听单元和推送单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来避免由于推送服务器同一时间接收到大量消息推送请求,而导致推送服务器宕机的情况发生。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
根据所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
进一步的,在所述接收消息推送请求之前,所述方法还包括:
获取每个推送服务器对应的服务列表及负载数量;
当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
进一步的,在所述获取每个推送服务器对应的服务列表及负载数量之后,所述方法还包括:
将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
进一步的,所述登录请求中包含身份验证信息;所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
对所述身份验证信息进行鉴权处理;
当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
本发明实施例还提供了另外一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
创建消息队列;
监听所述消息队列,当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
进一步的,所述方法还包括:
当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
更新负载数量,并将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
进一步的,所述方法还包括:
当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除,并更新负载数量。
进一步的,所述创建消息队列,包括:
将IP地址和端口号作为队列名称,创建所述消息队列。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;根据所述目标客户端对应的唯一标识在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
本申请还提供了另外一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:创建消息队列;监听所述消息队列,当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (23)
1.一种推送消息的方法,其特征在于,应用于管理服务器,包括:
接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
根据所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
2.根据权利要求1所述的方法,其特征在于,在所述接收消息推送请求之前,所述方法还包括:
获取每个推送服务器对应的服务列表及负载数量;
当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
3.根据权利要求2所述的方法,其特征在于,在所述获取每个推送服务器对应的服务列表及负载数量之后,所述方法还包括:
将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
4.根据权利要求2或3所述的方法,其特征在于,所述登录请求中包含身份验证信息;所述将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,包括:
对所述身份验证信息进行鉴权处理;
当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
5.一种推送消息的方法,其特征在于,应用于目标推送服务器,包括:
创建消息队列;
监听所述消息队列,当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
更新负载数量,并将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除,并更新负载数量。
8.根据权利要求5所述的方法,其特征在于,所述创建消息队列,包括:
将IP地址和端口号作为队列名称,创建所述消息队列。
9.一种管理服务器,其特征在于,包括:
接收单元,用于接收消息推送请求;
确定单元,用于根据所述接收单元接收的所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;
查找单元,用于根据所述确定单元确定的所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;
存放单元,用于将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中,以便所述目标推送服务器通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
10.根据权利要求9所述的管理服务器,其特征在于,所述管理服务器还包括:
获取单元,用于在所述接收单元接收消息推送请求之前,获取每个推送服务器对应的服务列表及负载数量;
发送单元,用于当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端,以便所述目标客户端在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,并根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
11.根据权利要求10所述的管理服务器,其特征在于,所述管理服务器还包括:
缓存单元,用于在所述获取单元获取每个推送服务器对应的服务列表及负载数量之后,将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中;
所述发送单元包括:
获取模块,用于在所述本地存储空间中获取每个所述推送服务器对应的服务列表及负载数量;
第一发送模块,用于将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
12.根据权利要求10或11所述的管理服务器,其特征在于,所述登录请求中包含身份验证信息;所述发送单元包括:
鉴权模块,用于对所述身份验证信息进行鉴权处理;
第二发送模块,用于当鉴权成功时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端。
13.一种目标推送服务器,其特征在于,包括:
创建单元,用于创建消息队列;
监听单元,用于监听所述创建单元创建的所述消息队列;
推送单元,用于当在所述消息队列中监听到待推送消息和目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
14.根据权利要求13所述的目标推送服务器,其特征在于,所述目标推送服务器还包括:
存储单元,用于当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;
第一更新单元,用于更新负载数量;
发送单元,用于将更新后的负载数量发送至所述目标客户端,以便当所述目标客户端断开与所述目标推送服务器之间的websocket连接时,所述目标客户端根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
15.根据权利要求14所述的目标推送服务器,其特征在于,所述目标推送服务器还包括:
删除单元,用于当断开与所述目标客户端之间的websocket连接时,在所述数据库中将所述映射关系删除;
第二更新单元,用于更新负载数量。
16.根据权利要求13所述的目标推送服务器,其特征在于,所述创建单元包括:
创建模块,用于将IP地址和端口号作为队列名称,创建所述消息队列。
17.一种推送消息的系统,其特征在于,所述系统包括:权利要求9-12中任一项所述的管理服务器、权利要求13-16中任一项所述的目标推送服务器及目标客户端,
所述目标推送服务器,用于创建消息队列,并监听所述消息队列;
所述管理服务器,用于接收消息推送请求,并根据所述消息推送请求确定目标客户端对应的唯一标识及待推送消息;根据所述目标客户端对应的唯一标识,在数据库中查找与所述目标客户端之间建立有websocket连接的所述目标推送服务器,其中,所述数据库中存储有所述目标推送服务器对应的IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系;将所述待推送消息及所述目标客户端对应的唯一标识存放至所述目标推送服务器对应的消息队列中;
所述目标推送服务器,还用于当在所述消息队列中监听到所述待推送消息和所述目标客户端对应的唯一标识时,通过与所述目标客户端之间的websocket连接将所述待推送消息推送至所述目标客户端。
18.根据权利要求17所述的系统,其特征在于,
所述管理服务器,还用于获取每个推送服务器对应的服务列表及负载数量;
所述目标客户端,用于向所述管理服务器发送登录请求;
所述管理服务器,还用于当接收到所述目标客户端发送的登录请求时,将每个所述推送服务器对应的服务列表及负载数量发送至所述目标客户端;
所述目标客户端,还用于接收每个所述推送服务器对应的服务列表及负载数量,并在将每个所述推送服务器对应的服务列表及负载数量缓存至本地存储空间中后,根据每个所述推送服务器对应的负载数量确定所述目标推送服务器,以及根据所述目标推送服务器对应的服务列表建立与所述目标推送服务器之间的websocket连接。
19.根据权利要求18所述的系统,其特征在于,
所述目标推送服务器,还用于当成功建立与所述目标客户端之间的websocket连接时,将IP地址、端口号与所述目标客户端对应的唯一标识之间的映射关系存储至数据库中;更新负载数量,并将更新后的负载数量发送至所述目标客户端;
所述目标客户端,还用于接收所述更新后的负载数量;当断开与所述目标推送服务器之间的websocket连接时,根据本地存储空间中缓存的每个所述推送服务器对应的负载数量及所述目标推送服务器对应的、更新后的负载数量,确定待连接推送服务器,并根据所述待连接推送服务器对应的服务列表建立与所述待连接推送服务器之间的websocket连接。
20.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至4中任一项所述的推送消息的方法。
21.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求5至8中任一项所述的推送消息的方法。
22.一种管理服务器,其特征在于,所述管理服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行权利要求1至4中任一项所述的推送消息的方法。
23.一种目标推送服务器,其特征在于,所述目标推送服务器包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行权利要求5至8中任一项所述的推送消息的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420414.2A CN111970315A (zh) | 2019-05-20 | 2019-05-20 | 推送消息的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420414.2A CN111970315A (zh) | 2019-05-20 | 2019-05-20 | 推送消息的方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111970315A true CN111970315A (zh) | 2020-11-20 |
Family
ID=73357785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910420414.2A Pending CN111970315A (zh) | 2019-05-20 | 2019-05-20 | 推送消息的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111970315A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468573A (zh) * | 2020-11-24 | 2021-03-09 | 新天科技股份有限公司 | 数据推送方法、装置、设备及存储介质 |
CN112600926A (zh) * | 2020-12-16 | 2021-04-02 | 平安消费金融有限公司 | 一种消息推送方法、装置及计算机可读存储介质 |
CN113194150A (zh) * | 2021-05-12 | 2021-07-30 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种长连接推送服务处理系统 |
CN113190778A (zh) * | 2021-04-30 | 2021-07-30 | 深圳壹账通创配科技有限公司 | 业务数据推送方法、系统、计算机设备及计算机存储介质 |
CN113329062A (zh) * | 2021-05-10 | 2021-08-31 | 灵羲科技(北京)有限公司 | 数据共享方法、装置、电子设备和存储介质 |
CN113382050A (zh) * | 2021-05-27 | 2021-09-10 | 北京皮尔布莱尼软件有限公司 | 一种消息传输方法、系统、计算设备及存储介质 |
CN113596147A (zh) * | 2021-07-27 | 2021-11-02 | 奇安信科技集团股份有限公司 | 消息推送方法、装置、设备与存储介质 |
CN113836428A (zh) * | 2021-10-12 | 2021-12-24 | 平安资产管理有限责任公司 | 业务推送方法、装置、计算机设备和存储介质 |
CN113852450A (zh) * | 2021-09-09 | 2021-12-28 | 深圳Tcl新技术有限公司 | 一种消息推送反馈方法、装置、电子设备和存储介质 |
CN114189507A (zh) * | 2021-12-09 | 2022-03-15 | 北京思明启创科技有限公司 | 一种应用屏幕控制方法、装置、电子设备及存储介质 |
CN114553946A (zh) * | 2022-01-29 | 2022-05-27 | 北京金堤科技有限公司 | 一种对消息进行处理的方法及装置 |
CN114979238A (zh) * | 2022-05-24 | 2022-08-30 | 浪潮软件集团有限公司 | 多客户端数据实时推送方法及系统 |
CN115086292A (zh) * | 2022-06-15 | 2022-09-20 | 浙江省标准化研究院(金砖国家标准化(浙江)研究中心、浙江省物品编码中心) | 分布式即时服务器推送方案架构设计方法、装置、存储介质 |
CN115225703A (zh) * | 2022-04-02 | 2022-10-21 | 广州汽车集团股份有限公司 | 消息通信方法、装置、交通工具以及存储介质 |
CN115297162A (zh) * | 2022-06-27 | 2022-11-04 | 青岛海尔科技有限公司 | 消息的发送方法和装置、存储介质及电子装置 |
CN115314551A (zh) * | 2022-10-12 | 2022-11-08 | 东方合智数据科技(广东)有限责任公司 | 设备数据推送方法及设备数据推送系统 |
CN116611663A (zh) * | 2023-06-07 | 2023-08-18 | 广州三七极梦网络技术有限公司 | 一种美术外包管理系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024050A (zh) * | 2012-12-17 | 2013-04-03 | 北京奇虎科技有限公司 | 分发器和对多个服务器进行分发的方法 |
CN103780681A (zh) * | 2014-01-06 | 2014-05-07 | 南京莱斯信息技术股份有限公司 | 一种高实时性Web应用系统及其数据实时推送方法 |
US20140201239A1 (en) * | 2013-01-16 | 2014-07-17 | Alibaba Group Holding Limited | Method, device and system for pushing information |
CN106657327A (zh) * | 2016-12-20 | 2017-05-10 | 上海银禾油信息技术有限公司 | 消息推送方法及装置 |
CN106686129A (zh) * | 2017-01-23 | 2017-05-17 | 天地融科技股份有限公司 | 一种负载均衡方法及系统 |
CN107105064A (zh) * | 2017-06-02 | 2017-08-29 | 上海艾融软件股份有限公司 | 一种交易信息的推送方法及系统 |
CN108418884A (zh) * | 2018-03-09 | 2018-08-17 | 北京奇艺世纪科技有限公司 | 一种传输业务数据的方法、装置及电子设备 |
CN108683653A (zh) * | 2018-05-07 | 2018-10-19 | 常熟市第人民医院 | 一种基于WebSocket的主动式消息推送系统 |
CN108737570A (zh) * | 2018-06-22 | 2018-11-02 | 北京奇艺世纪科技有限公司 | 一种信息推送方法、装置及系统 |
CN108833521A (zh) * | 2018-06-06 | 2018-11-16 | 广州视源电子科技股份有限公司 | 消息推送方法、装置、系统、计算机设备和存储介质 |
CN109151056A (zh) * | 2018-09-26 | 2019-01-04 | 携程计算机技术(上海)有限公司 | 基于Canal的消息推送方法和系统 |
-
2019
- 2019-05-20 CN CN201910420414.2A patent/CN111970315A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024050A (zh) * | 2012-12-17 | 2013-04-03 | 北京奇虎科技有限公司 | 分发器和对多个服务器进行分发的方法 |
US20140201239A1 (en) * | 2013-01-16 | 2014-07-17 | Alibaba Group Holding Limited | Method, device and system for pushing information |
CN103780681A (zh) * | 2014-01-06 | 2014-05-07 | 南京莱斯信息技术股份有限公司 | 一种高实时性Web应用系统及其数据实时推送方法 |
CN106657327A (zh) * | 2016-12-20 | 2017-05-10 | 上海银禾油信息技术有限公司 | 消息推送方法及装置 |
CN106686129A (zh) * | 2017-01-23 | 2017-05-17 | 天地融科技股份有限公司 | 一种负载均衡方法及系统 |
CN107105064A (zh) * | 2017-06-02 | 2017-08-29 | 上海艾融软件股份有限公司 | 一种交易信息的推送方法及系统 |
CN108418884A (zh) * | 2018-03-09 | 2018-08-17 | 北京奇艺世纪科技有限公司 | 一种传输业务数据的方法、装置及电子设备 |
CN108683653A (zh) * | 2018-05-07 | 2018-10-19 | 常熟市第人民医院 | 一种基于WebSocket的主动式消息推送系统 |
CN108833521A (zh) * | 2018-06-06 | 2018-11-16 | 广州视源电子科技股份有限公司 | 消息推送方法、装置、系统、计算机设备和存储介质 |
CN108737570A (zh) * | 2018-06-22 | 2018-11-02 | 北京奇艺世纪科技有限公司 | 一种信息推送方法、装置及系统 |
CN109151056A (zh) * | 2018-09-26 | 2019-01-04 | 携程计算机技术(上海)有限公司 | 基于Canal的消息推送方法和系统 |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112468573A (zh) * | 2020-11-24 | 2021-03-09 | 新天科技股份有限公司 | 数据推送方法、装置、设备及存储介质 |
CN112468573B (zh) * | 2020-11-24 | 2023-05-23 | 新天科技股份有限公司 | 基于分布式部署的数据推送方法、装置、设备及存储介质 |
CN112600926A (zh) * | 2020-12-16 | 2021-04-02 | 平安消费金融有限公司 | 一种消息推送方法、装置及计算机可读存储介质 |
CN113190778A (zh) * | 2021-04-30 | 2021-07-30 | 深圳壹账通创配科技有限公司 | 业务数据推送方法、系统、计算机设备及计算机存储介质 |
CN113329062B (zh) * | 2021-05-10 | 2022-11-01 | 灵羲科技(北京)有限公司 | 数据共享方法、装置、电子设备和存储介质 |
CN113329062A (zh) * | 2021-05-10 | 2021-08-31 | 灵羲科技(北京)有限公司 | 数据共享方法、装置、电子设备和存储介质 |
CN113194150A (zh) * | 2021-05-12 | 2021-07-30 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种长连接推送服务处理系统 |
CN113194150B (zh) * | 2021-05-12 | 2023-04-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种长连接推送服务处理系统 |
CN113382050A (zh) * | 2021-05-27 | 2021-09-10 | 北京皮尔布莱尼软件有限公司 | 一种消息传输方法、系统、计算设备及存储介质 |
CN113382050B (zh) * | 2021-05-27 | 2022-11-11 | 北京皮尔布莱尼软件有限公司 | 一种消息传输方法、系统、计算设备及存储介质 |
CN113596147A (zh) * | 2021-07-27 | 2021-11-02 | 奇安信科技集团股份有限公司 | 消息推送方法、装置、设备与存储介质 |
CN113596147B (zh) * | 2021-07-27 | 2023-10-24 | 奇安信科技集团股份有限公司 | 消息推送方法、装置、设备与存储介质 |
CN113852450A (zh) * | 2021-09-09 | 2021-12-28 | 深圳Tcl新技术有限公司 | 一种消息推送反馈方法、装置、电子设备和存储介质 |
CN113836428A (zh) * | 2021-10-12 | 2021-12-24 | 平安资产管理有限责任公司 | 业务推送方法、装置、计算机设备和存储介质 |
CN114189507A (zh) * | 2021-12-09 | 2022-03-15 | 北京思明启创科技有限公司 | 一种应用屏幕控制方法、装置、电子设备及存储介质 |
CN114189507B (zh) * | 2021-12-09 | 2024-03-01 | 北京思明启创科技有限公司 | 一种应用屏幕控制方法、装置、电子设备及存储介质 |
CN114553946A (zh) * | 2022-01-29 | 2022-05-27 | 北京金堤科技有限公司 | 一种对消息进行处理的方法及装置 |
CN114553946B (zh) * | 2022-01-29 | 2024-01-19 | 北京金堤科技有限公司 | 一种对消息进行处理的方法及装置 |
CN115225703A (zh) * | 2022-04-02 | 2022-10-21 | 广州汽车集团股份有限公司 | 消息通信方法、装置、交通工具以及存储介质 |
CN115225703B (zh) * | 2022-04-02 | 2023-12-22 | 广州汽车集团股份有限公司 | 消息通信方法、装置、交通工具以及存储介质 |
CN114979238A (zh) * | 2022-05-24 | 2022-08-30 | 浪潮软件集团有限公司 | 多客户端数据实时推送方法及系统 |
CN115086292A (zh) * | 2022-06-15 | 2022-09-20 | 浙江省标准化研究院(金砖国家标准化(浙江)研究中心、浙江省物品编码中心) | 分布式即时服务器推送方案架构设计方法、装置、存储介质 |
CN115297162A (zh) * | 2022-06-27 | 2022-11-04 | 青岛海尔科技有限公司 | 消息的发送方法和装置、存储介质及电子装置 |
CN115297162B (zh) * | 2022-06-27 | 2024-03-22 | 青岛海尔科技有限公司 | 消息的发送方法和装置、存储介质及电子装置 |
CN115314551A (zh) * | 2022-10-12 | 2022-11-08 | 东方合智数据科技(广东)有限责任公司 | 设备数据推送方法及设备数据推送系统 |
CN116611663A (zh) * | 2023-06-07 | 2023-08-18 | 广州三七极梦网络技术有限公司 | 一种美术外包管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111970315A (zh) | 推送消息的方法、装置及系统 | |
CN110557423B (zh) | 一种消息推送方法及系统 | |
EP2985705A2 (en) | Webpage access method and apparatus, and router | |
CN112788126B (zh) | 资源下载方法、装置、服务器和存储介质 | |
CN103370917B (zh) | 消息处理方法及服务器 | |
US9088462B2 (en) | Common web accessible data store for client side page processing | |
US11163499B2 (en) | Method, apparatus and system for controlling mounting of file system | |
CN111277481B (zh) | 一种建立vpn隧道的方法、装置、设备及存储介质 | |
CN112513830A (zh) | 内容分发网络中的回源方法及相关装置 | |
CN112929463A (zh) | 一种基于dns的流量代理方法、服务器及系统 | |
CN112087475B (zh) | 一种云平台组件应用的消息推送方法、装置及消息服务器 | |
CN113127923A (zh) | 管理权限的方法和装置 | |
CN111131498B (zh) | Url信息更新方法、缓存服务器、设备及存储介质 | |
CN109962834B (zh) | 信息处理方法、系统、终端和计算机存储介质 | |
CN113612811B (zh) | 一种在多通道中客户端挂载的方法、系统、设备及介质 | |
CN115004666A (zh) | 物联网设备的注册方法、装置、设备及存储介质 | |
CN108337280B (zh) | 一种资源更新方法及装置 | |
CN111107039A (zh) | 一种基于tcp连接的通信方法、装置及系统 | |
CN106899652B (zh) | 一种推送业务处理结果的方法及装置 | |
CN106790176B (zh) | 一种访问网络的方法及系统 | |
CN113824675B (zh) | 管理登录态的方法和装置 | |
CN113965571A (zh) | 一种分布式嵌入式设备的管理方法、装置、设备及介质 | |
CN113626188A (zh) | 任务推送方法、装置、计算机设备和存储介质 | |
CN109302446B (zh) | 跨平台访问方法、装置、电子设备及存储介质 | |
CN114979025B (zh) | 资源刷新方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |