基于消息队列的页面组件更新方法及其系统技术方案

技术编号:37122725 阅读:13 留言:0更新日期:2023-04-01 05:18
本申请提供基于消息队列的页面组件更新方法及其系统,方法包括:一组件更新后,发送对应所述一组件的更新消息至消息队列;消息队列广播所述更新消息;接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息;接收到所述更新消息的浏览器,依据所述更新消息对所述一组件进行更新。通过消息队列结合浏览器与应用系统之间的实时双向通信链路,实现用户终端页面组件单元无刷新的动态获取数据,在提升用户体验的同时,又能节省服务器资源。器资源。器资源。

【技术实现步骤摘要】
基于消息队列的页面组件更新方法及其系统


[0001]本申请涉及页面数据更新领域,具体涉及基于消息队列的页面组件更新方法及其系统。

技术介绍

[0002]基于B/S架构的应用和项目中的数据刷新是最基本的功能,通过脚本方式或通过浏览器的操作都可以实现,可以满足大部分的业务需求。但是有些特殊的业务场景就无法单纯的靠刷新机制来获得实时性的数据体验,在实际使用情况中,这些业务场景常使用刷新整个页面或者通过脚本定时获取数据这两种方式来刷新前端组件的数据。
[0003]其中的第一种方式,即刷新整个页面的方式,是业界目前使用最普遍的业务数据刷新技术的应用,依靠浏览器的刷新可以达到最新数据的展示效果。但是这种方式对用户来说体验不佳,且用户也无法感知何时刷新页面才能展示最新数据,只能不断尝试刷新页面。
[0004]其中的第二种方式,具体依靠脚本不断轮询服务器获取最新数据,并将轮询到的数据更新到页面组件进行渲染。这种方式存在轮询时间间隔的问题,轮询间隔时间设置太久会导致用户无法及时获得最新的数据;轮询间隔时间设置太短会对服务器造成不必要的访问压力,而且在访问高峰期极有可能导致服务直接挂起,引起生产事故。
[0005]基于上述,有必要提供一种技术方案,以解决上述痛点问题。

技术实现思路

[0006]鉴于上述问题,本申请提供了一种基于消息队列的页面组件更新方法及其系统,能够实现终端用户的页面组件单元具备数据动态刷新功能。
[0007]为实现上述目的,专利技术人提供了一种基于消息队列的页面组件更新方法,包括:
[0008]一组件更新后,发送对应所述一组件的更新消息至消息队列;
[0009]消息队列广播所述更新消息;
[0010]接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息;
[0011]接收到所述更新消息的浏览器,依据所述更新消息对所述一组件进行更新。
[0012]区别于现有技术,上述技术方案通过消息队列结合浏览器与应用系统之间的实时双向通信链路,实现用户终端页面组件单元无刷新的动态获取数据,在提升用户体验的同时,又能节省服务器资源。
[0013]在一些实施例中,所述一组件更新后,之后,还包括:
[0014]存储对应所述一组件的更新数据至数据库;
[0015]所述依据所述更新消息对所述一组件进行更新,包括:
[0016]依据所述更新消息,通过调用脚本从所述数据库获取所述一组件的更新数据,并依据所述更新数据刷新所述一组件。
[0017]在这些实施例中,各应用系统将依据更新消息直接从数据库中获取更新数据,做到高效地差量更新组件。
[0018]在一些实施例中,所述一组件更新后,包括:
[0019]通过浏览器登录系统;
[0020]浏览器接收对应系统一组件的编辑结果,并依据所述编辑结果生成对应所述一组件的更新数据;
[0021]发送所述更新数据至浏览器对应的应用系统。
[0022]在这些实施例中,用户可以通过任一浏览器登录系统对任一组件进行编辑,实现了便捷地执行组件更新。
[0023]在一些实施例中,所述通信链路为基于WebSocket技术的通信链路。
[0024]在这些实施例中,直接利用浏览器与应用系统之间进行实时双向通信的WebSocket技术将更新消息传递到当前每一个登录系统的浏览器,以主动“提醒”其需要进行组件更新,不仅无需对应用系统造成访问压力,而且能够兼具传递更新消息的即时性。
[0025]在一些实施例中,所述接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息,包括:
[0026]接收到所述更新消息的应用系统,若其当前与浏览器建立通信链路,则通过所述通信链路广播所述更新消息。
[0027]在这些实施例中,只针对当前登录系统的浏览器进行页面组件更新,以此节省数据传输资源。
[0028]为实现上述目的,专利技术人还提供了一种基于消息队列的页面组件更新系统,包括多个的应用系统、浏览器和一消息队列;
[0029]所述应用系统,用于一组件更新后,发送对应所述一组件的更新消息至消息队列;以及用于接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息;
[0030]所述浏览器,用于对一组件更新,以及接收到所述更新消息后,依据所述更新消息对所述一组件进行更新;
[0031]所述消息队列,用于消息队列广播所述更新消息。
[0032]在一些实施例中,所述应用系统,还用于存储对应所述一组件的更新数据至数据库;
[0033]所述浏览器,还用于依据所述更新消息,通过调用脚本从所述数据库获取所述一组件的更新数据,并依据所述更新数据刷新所述一组件。
[0034]在一些实施例中,所述浏览器,还用于登录系统;以及用于接收对应系统一组件的编辑结果,并依据所述编辑结果生成对应所述一组件的更新数据;以及用于发送所述更新数据至浏览器对应的应用系统。
[0035]在一些实施例中,所述通信链路为基于WebSocket技术的通信链路。
[0036]在一些实施例中,所述应用系统,还用于接收到所述更新消息后,若其当前与浏览器建立通信链路,则通过所述通信链路广播所述更新消息。
[0037]区别于现有技术,上述技术方案通过消息队列结合浏览器与应用系统之间的实时双向通信链路,实现用户终端页面组件单元无刷新的动态获取数据,在提升用户体验的同
时,又能节省服务器资源。
[0038]上述
技术实现思路
相关记载仅是本申请技术方案的概述,为了让本领域普通技术人员能够更清楚地了解本申请的技术方案,进而可以依据说明书的文字及附图记载的内容予以实施,并且为了让本申请的上述目的及其它目的、特征和优点能够更易于理解,以下结合本申请的具体实施方式及附图进行说明。
附图说明
[0039]附图仅用于示出本申请具体实施方式以及其他相关内容的原理、实现方式、应用、特点以及效果等,并不能认为是对本申请的限制。
[0040]在说明书附图中:
[0041]图1为本申请实施例一种基于消息队列的页面组件更新方法的流程示意图;
[0042]图2为本申请具体实施例一种基于消息队列的页面组件更新方法的信息交互示意图;
[0043]图3为本申请实施例一种基于消息队列的页面组件更新系统的结构组成与连接示意图。
[0044]上述各附图中涉及的附图标记说明如下:
[0045]101、应用系统;102、浏览器;103、消息队列。
具体实施方式
[0046]为详细说明本申请可能的应用场景,技术原理,可实施的具体方案,能实现目的与效果等,以下结合所列举的具体实施例并配合附图详予说明。本文所记载的实施例仅用于更加清楚地说明本申请的技术方案,因此只作为示例,而不能以此来限制本申请的保护范围。
[0047]在本文中提及“实施例”意味着,结合实施例描述的特定特征、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于消息队列的页面组件更新方法,其特征在于,包括:一组件更新后,发送对应所述一组件的更新消息至消息队列;消息队列广播所述更新消息;接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息;接收到所述更新消息的浏览器,依据所述更新消息对所述一组件进行更新。2.根据权利要求1所述的基于消息队列的页面组件更新方法,其特征在于,所述一组件更新后,之后,还包括:存储对应所述一组件的更新数据至数据库;所述依据所述更新消息对所述一组件进行更新,包括:依据所述更新消息,通过调用脚本从所述数据库获取所述一组件的更新数据,并依据所述更新数据刷新所述一组件。3.根据权利要求1所述的基于消息队列的页面组件更新方法,其特征在于,所述一组件更新后,包括:通过浏览器登录系统;浏览器接收对应系统一组件的编辑结果,并依据所述编辑结果生成对应所述一组件的更新数据;发送所述更新数据至浏览器对应的应用系统。4.根据权利要求1所述的基于消息队列的页面组件更新方法,其特征在于,所述通信链路为基于WebSocket技术的通信链路。5.根据权利要求1所述的基于消息队列的页面组件更新方法,其特征在于,所述接收到所述更新消息的应用系统,通过其与浏览器的通信链路广播所述更新消息,包括:接收到所述更新消息的应用系统,若其当前与浏览器建立通信链路,则通过所述通信链路广播所述更新消息。6.一种...

【专利技术属性】
技术研发人员:桑海翎曾伟波郑康秋刘见奋陈檀晟
申请(专利权)人:福建正孚软件有限公司
类型:发明
国别省市:

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

1