一种消息推送方法、装置、介质及电子设备制造方法及图纸

技术编号:36080197 阅读:10 留言:0更新日期:2022-12-24 10:53
本申请公开了一种消息推送方法、装置、介质及电子设备。本申请中在web端与业务服务器之间断开数据连接的情况下不直接推送消息,而是将消息保存到数据库中,待相应的web端重新与业务服务器建立数据连接之后再从存储数据库中读取相应的消息推送给web端,由此避免消息无法推送到web端的情况,进而提高业务服务器向web端推送消息的可靠性。器向web端推送消息的可靠性。器向web端推送消息的可靠性。

【技术实现步骤摘要】
一种消息推送方法、装置、介质及电子设备


[0001]本申请涉及计算机网络
,尤其涉及一种消息推送方法、装置、介质及电子设备。

技术介绍

[0002]在问答服务中,用户可以在通过登录浏览器中的web端向业务服务器发送需要解答的问题信息,业务服务器向web端发送相应的答案信息。另外,业务服务器也可以主动向web端推送相应的业务消息,如广告连接、上新提醒等消息。
[0003]但是,用户在web端退出登录后,web端与业务服务器之间的数据连接会被断开,此时,业务服务器无法向web端推送消息,即使用户重新登录web端,也不会获得到业务服务器的消息。
[0004]因此,亟需一种能够提高业务服务器向web端进行消息推送的可靠性的技术方案。

技术实现思路

[0005]有鉴于此,本申请提供一种消息推送方法、装置、介质及电子设备,用于提高业务服务器向web端推送消息的可靠性,如下:
[0006]一种消息推送方法,应用于业务服务器,所述方法包括:
[0007]从基于Redis的消息数据库中获得第一消息;所述第一消息由消息服务器保存到存储数据库并发布到所述消息数据库中,所述存储数据库中存储有至少一条推送消息,所述存储数据库中的所述推送消息具有第一推送标识或第二推送标识,所述第一推送标识表征其所属的推送消息已经被推送到相应的web端,所述第二推送标识表征其所属的推送消息未被推送到相应的web端;
[0008]在所述业务服务器当前建立的基于websocket的第一数据连接中,查找与所述第一消息相对应的目标连接;
[0009]在所述第一数据连接中查找到与所述第一消息相对应的目标连接的情况下,通过所述目标连接,将所述第一消息发送到所述目标连接对应的第一web端并为所述存储数据库中的所述第一消息设置所述第一推送标识;
[0010]在所述第一数据连接中没有查找到与所述第一消息相对应的目标连接的情况下,监测所述业务服务器上是否新建基于websocket的第二数据连接;
[0011]在所述业务服务器上新建基于websocket的第二数据连接的情况下,判断所述存储数据库中是否存在具有所述第二推送标识的第二消息与所述第二数据连接相对应;
[0012]在所述存储数据库中存在所述第二消息与所述第二数据连接相对应的情况下,通过所述第二数据连接,将所述第二消息发送到所述第二数据连接对应的第二web端。
[0013]上述方法,优选的,所述第二消息存在多个的情况下,每个所述第二消息分别具有消息发布时间;
[0014]其中,所述通过所述第二数据连接,将所述第二消息发送到所述第二数据连接对
应的第二web端,包括:
[0015]按照所述消息发布时间的先后顺序,依次将每个所述第二消息通过所述第二数据连接发送到所述第二数据连接对应的第二web端。
[0016]上述方法,优选的,所述第一消息由所述消息服务器在生成后保存到所述存储数据库并发布到所述消息数据库中;
[0017]或者,所述第一消息由所述消息服务器在生成后且预设的推送条件被满足的情况下保存到所述存储数据库并发布到所述消息数据库中。
[0018]上述方法,优选的,所述推送条件包括:所述第一消息对应有预设的推送时刻,且所述消息服务器上的当前时刻与所述推送时刻相一致。
[0019]上述方法,优选的,所述业务服务器对应于所述消息数据库中的目标订阅频道,且所述目标订阅频道与所述业务服务器为所述web端提供的业务服务类型相匹配,以使得所述消息数据库通过所述目标订阅频道将其对应的推送消息发送给所有对应于所述目标订阅频道的业务服务器。
[0020]上述方法,优选的,还包括:
[0021]接收所述第一web端发送的访问请求,所述访问请求中包含有所述第一web端中存储的用户信息;所述用户信息由所述业务服务器对所述第一web端的登录用户进行登录身份认证且登录身份认证通过的情况下发送给所述第一web端;
[0022]根据所述访问请求中的用户信息对所述第一web端的登录用户进行访问身份认证,以得到访问认证结果;
[0023]在所述访问认证结果表征所述第一web端的登录用户访问身份认证通过的情况下,向所述第一web端发送所述访问请求对应的访问数据。
[0024]一种消息推送装置,应用于业务服务器,所述装置包括:
[0025]消息获得单元,用于从基于Redis的消息数据库中获得第一消息;所述第一消息由消息服务器保存到存储数据库并发布到所述消息数据库中,所述存储数据库中存储有至少一条推送消息,所述存储数据库中的所述推送消息具有第一推送标识或第二推送标识,所述第一推送标识表征其所属的推送消息已经被推送到相应的web端,所述第二推送标识表征其所属的推送消息未被推送到相应的web端;
[0026]连接查找单元,用于在所述业务服务器当前建立的基于websocket的第一数据连接中,查找与所述第一消息相对应的目标连接;在所述第一数据连接中查找到与所述第一消息相对应的目标连接的情况下,触发消息推送单元;在所述第一数据连接中没有查找到与所述第一消息相对应的目标连接的情况下,触发连接监测单元;
[0027]所述消息推送单元,用于通过所述目标连接,将所述第一消息发送到所述目标连接对应的第一web端并为所述存储数据库中的所述第一消息设置所述第一推送标识;
[0028]所述连接监测单元,用于监测所述业务服务器上是否新建基于websocket的第二数据连接;在所述业务服务器上新建基于websocket的第二数据连接的情况下,触发消息匹配单元;
[0029]所述消息匹配单元,用于判断所述存储数据库中是否存在具有所述第二推送标识的第二消息与所述第二数据连接相对应;在所述存储数据库中存在所述第二消息与所述第二数据连接相对应的情况下,触发所述消息推送单元通过所述第二数据连接,将所述第二
消息发送到所述第二数据连接对应的第二web端。
[0030]上述装置,优选的,所述第二消息存在多个的情况下,每个所述第二消息分别具有消息发布时间;
[0031]其中,所述通过所述第二数据连接,将所述第二消息发送到所述第二数据连接对应的第二web端,包括:
[0032]按照所述消息发布时间的先后顺序,依次将每个所述第二消息通过所述第二数据连接发送到所述第二数据连接对应的第二web端。
[0033]一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时实现如前述任意一项所述的方法。
[0034]一种电子设备,包括:
[0035]一个或多个处理器;
[0036]存储装置,其上存储有一个或多个计算机程序;
[0037]当所述一个或多个计算机程序被所述一个或多个处理器运行时,使得所述一个或多个处理器实现如前述任意一项所述的方法。
[0038]从上述技术方案可以看出,本申请公开的一种消息推送方法、装置、介质本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种消息推送方法,其特征在于,应用于业务服务器,所述方法包括:从基于Redis的消息数据库中获得第一消息;所述第一消息由消息服务器保存到存储数据库并发布到所述消息数据库中,所述存储数据库中存储有至少一条推送消息,所述存储数据库中的所述推送消息具有第一推送标识或第二推送标识,所述第一推送标识表征其所属的推送消息已经被推送到相应的web端,所述第二推送标识表征其所属的推送消息未被推送到相应的web端;在所述业务服务器当前建立的基于websocket的第一数据连接中,查找与所述第一消息相对应的目标连接;在所述第一数据连接中查找到与所述第一消息相对应的目标连接的情况下,通过所述目标连接,将所述第一消息发送到所述目标连接对应的第一web端并为所述存储数据库中的所述第一消息设置所述第一推送标识;在所述第一数据连接中没有查找到与所述第一消息相对应的目标连接的情况下,监测所述业务服务器上是否新建基于websocket的第二数据连接;在所述业务服务器上新建基于websocket的第二数据连接的情况下,判断所述存储数据库中是否存在具有所述第二推送标识的第二消息与所述第二数据连接相对应;在所述存储数据库中存在所述第二消息与所述第二数据连接相对应的情况下,通过所述第二数据连接,将所述第二消息发送到所述第二数据连接对应的第二web端。2.根据权利要求1所述的方法,其特征在于,所述第二消息存在多个的情况下,每个所述第二消息分别具有消息发布时间;其中,所述通过所述第二数据连接,将所述第二消息发送到所述第二数据连接对应的第二web端,包括:按照所述消息发布时间的先后顺序,依次将每个所述第二消息通过所述第二数据连接发送到所述第二数据连接对应的第二web端。3.根据权利要求1或2所述的方法,其特征在于,所述第一消息由所述消息服务器在生成后保存到所述存储数据库并发布到所述消息数据库中;或者,所述第一消息由所述消息服务器在生成后且预设的推送条件被满足的情况下保存到所述存储数据库并发布到所述消息数据库中。4.根据权利要求3所述的方法,其特征在于,所述推送条件包括:所述第一消息对应有预设的推送时刻,且所述消息服务器上的当前时刻与所述推送时刻相一致。5.根据权利要求1或2所述的方法,其特征在于,所述业务服务器对应于所述消息数据库中的目标订阅频道,且所述目标订阅频道与所述业务服务器为所述web端提供的业务服务类型相匹配,以使得所述消息数据库通过所述目标订阅频道将其对应的推送消息发送给所有对应于所述目标订阅频道的业务服务器。6.根据权利要求1或2所述的方法,其特征在于,还包括:接收所述第一web端发送的访问请求,所述访问请求中包含有所述第一web端中存储的用户信息;所述用户信息由所述业务服务器对所述第一web端的登录用户进行登录身份...

【专利技术属性】
技术研发人员:尚振浩李心玥
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1