[发明专利]一种任务推送方法和系统有效
申请号: | 201911334639.2 | 申请日: | 2019-12-23 |
公开(公告)号: | CN111131443B | 公开(公告)日: | 2023-06-30 |
发明(设计)人: | 谢鹏程;谭一昕 | 申请(专利权)人: | 中国平安财产保险股份有限公司 |
主分类号: | H04L67/55 | 分类号: | H04L67/55;H04L67/141;H04L67/146;H04L67/566;H04L67/02 |
代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 武志峰 |
地址: | 518000 广东省深圳市福田区益田路*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 推送 方法 系统 | ||
1.一种任务推送方法,其特征在于,方法包括:
网关服务器集群中的各网关服务器与各客户端分别建立连接,并在所述各网关服务器本地存储对应客户端的信息;
所述网关服务器集群中的各网关服务器调用后台服务器,对后台服务器的客户端状态进行更新;
所述后台服务器接收到派发的任务时,根据所述任务的类型确定对应的服务层,并通过所述服务层组装任务数据并查找满足所述任务条件的客户端集合,并以消息的形式将任务数据以及客户端集合发送至消息队列;
所述网关服务器集群中的网关服务器监听到消息队列中有新的消息时,根据客户端集合在本地查找对应的客户端,并将任务数据发送至对应的客户端;
所述网关服务器集群中的各网关服务器与各客户端分别建立连接,并在所述各网关服务器本地存储对应客户端的信息,包括:
网关服务器集群中的网关服务器接收到客户端的连接请求后,与对应客户端建立websocket连接;
在建立websocket连接后,所述网关服务器分发一会话ID至客户端,并在本地存储对应客户端的会话ID;
所述网关服务器集群中的网关服务器接收到客户端的连接请求后,与对应客户端建立websocket连接,包括:
当接收到所述客户端的连接请求后,从网关服务器集群中确定一个与之对应的网关服务器;
利用确定出的所述网关服务器与对应所述客户端建立websocket连接;
所述当接收到所述客户端的连接请求后,从网关服务器集群中确定一个与之对应的网关服务器,包括:
当接收到所述客户端的连接请求后,根据网关服务器集群中各网关服务器所连接的客户端数量,从网关服务器集群中确定一个与所述客户端对应的网关服务器,使各网关服务器均摊所连接的客户端数量;确定网关服务器的方法为:将网关服务器集群中的各网关服务器各设置一从0至n-1的模数,其中的n为网关服务器集群中的网关服务器数量,将所需连接的客户端关键字段进行hash处理,再将处理后得到的hash值对网关服务器的总数量取模,然后将取模结果与各网关服务器的模数进行匹配,确定客户端所连接的网关服务器;
所述后台服务器接收到派发的任务时,根据所述任务的类型确定对应的服务层,并通过所述服务层组装任务数据并查找满足所述任务条件的客户端集合,并以消息的形式将任务数据以及客户端集合发送至消息队列,包括:所述后台服务器接收到派发的任务时,获取任务的类型;根据所述任务的类型匹配对应的服务层;通过所述服务层组装任务数据;查找满足所述任务的条件并且在线的客户端并组成客户端集合;通过所述服务层以消息的形式将所述任务数据以及客户端集合发送至消息队列;
所述通过所述服务层以消息的形式将所述任务数据以及客户端集合发送至消息队列,包括:通过所述服务层将所述任务数据以及客户端集合组装为消息;将消息发送至指定消息主题下的消息队列;一个网关服务器只接收一种消息主题下的消息;
所述网关服务器集群中的网关服务器监听到消息队列中有新的消息时,根据客户端集合在本地查找对应的客户端,并将任务数据发送至对应的客户端,包括:当所述网关服务器集群中的网关服务器订阅所述消息主题时,使用广播消费模式对所述消息进行消费处理;对所述消息进行解析,获取其中的任务数据和客户端集合;根据客户端集合中的各客户端的信息与本地存储的客户端的信息进行匹配;根据匹配结果将任务数据发送至匹配出的客户端。
2.一种任务推送系统,其特征在于,包括:后台服务器、网关服务器集群;
所述网关服务器集群中的各网关服务器用于与各客户端分别建立连接,并在所述各网关服务器本地存储对应客户端的信息;所述网关服务器集群中的各网关服务器还用于调用后台服务器,对后台服务器的客户端状态进行更新;所述网关服务器集群中的网关服务器还用于监听到消息队列中有新的消息时,根据客户端集合在本地查找对应的客户端,并将任务数据发送至对应的客户端;
所述后台服务器用于在接收到派发的任务时,根据所述任务的类型确定对应的服务层,并通过所述服务层组装任务数据并查找满足所述任务条件的客户端集合,并以消息的形式将任务数据以及客户端集合发送至消息队列;
所述网关服务器集群中的网关服务器还用于接收到客户端的连接请求后,与对应客户端建立websocket连接;在建立websocket连接后,所述网关服务器分发一会话ID至客户端,并在本地存储对应客户端的会话ID;
所述网关服务器集群中的网关服务器还用于当接收到所述客户端的连接请求后,从网关服务器集群中确定一个与之对应的网关服务器;利用确定出的所述网关服务器与对应所述客户端建立websocket连接;
所述网关服务器集群中的网关服务器还用于:当接收到所述客户端的连接请求后,根据网关服务器集群中各网关服务器所连接的客户端数量,从网关服务器集群中确定一个与所述客户端对应的网关服务器,使各网关服务器均摊所连接的客户端数量;确定网关服务器的方法为:将网关服务器集群中的各网关服务器各设置一从0至n-1的模数,其中的n为网关服务器集群中的网关服务器数量,将所需连接的客户端关键字段进行hash处理,再将处理后得到的hash值对网关服务器的总数量取模,然后将取模结果与各网关服务器的模数进行匹配,确定客户端所连接的网关服务器;
所述后台服务器具体用于:接收到派发的任务时,获取任务的类型;根据所述任务的类型匹配对应的服务层;通过所述服务层组装任务数据;查找满足所述任务的条件并且在线的客户端并组成客户端集合;通过所述服务层以消息的形式将所述任务数据以及客户端集合发送至消息队列;
所述通过所述服务层以消息的形式将所述任务数据以及客户端集合发送至消息队列,包括:通过所述服务层将所述任务数据以及客户端集合组装为消息;将消息发送至指定消息主题下的消息队列;一个网关服务器只接收一种消息主题下的消息;
所述网关服务器集群中的网关服务器具体用于:当所述网关服务器集群中的网关服务器订阅所述消息主题时,使用广播消费模式对所述消息进行消费处理;对所述消息进行解析,获取其中的任务数据和客户端集合;根据客户端集合中的各客户端的信息与本地存储的客户端的信息进行匹配;根据匹配结果将任务数据发送至匹配出的客户端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国平安财产保险股份有限公司,未经中国平安财产保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911334639.2/1.html,转载请声明来源钻瓜专利网。