logo好方法网

一种基于树形结构数据的消息发布与订阅的方法和装置


技术摘要:
本发明涉及业务系统技术领域,具体公开了一种基于树形结构数据的消息发布与订阅的方法和装置,该方法包括在业务系统或视频监控系统的客户端中构造一个n叉树,树结点用于各类资源数据的渲染和展示;引入开源消息队列MQ,对每个树结点资源的消息进行发布;客户端或展示端  全部
背景技术:
传统的业务系统特别是安防业务应用系统,对各类业务资源通常是呈树状结构分 布和渲染展示的,但是这些业务资源通常会因增删改的操作而发生变化,以及资源本身会 有一些状态变化,如在线、离线、报警、锁定等,业务系统希望对资源的这些变化能在树结点 中实时体现和展示出来。业务系统之前比较常用的处理方式是:通过后台服务把所有资源 的变化及状态消息都推到客户端或展示端,供客户端或展示端渲染和展示;另一种方式是 客户端或展示端通过周期性向后台服务获取所有资源状态的方式,定时更新结点状态。以 上两种方法在树结点特别多的时候,比如树的结点有几万甚至几十万以上,且资源的变化 又比较频繁时,这时客户端或展示端需要消费或处理的消息就会非常多,很容易因消息消 费不过来,形成消息积压拥塞,最终导致客户端操作卡顿和状态显示不实时的情况。
技术实现要素:
本发明的目的是为了解决现有技术中存在的缺点,而提出的一种基于树形结构数 据的消息发布与订阅的方法和装置。 为了实现上述目的,本发明采用了如下技术方案: 一种基于树形结构数据的消息发布与订阅的方法,包括以下步骤: 步骤S1、构造一个用于渲染和展示资源数据分布的n叉树,将资源数据作为n叉树 的各结点; 步骤S2、基于屏幕的有限显示区域,通过对树结点的展开与收缩操作实现相应结 点的动态渲染和隐藏控制; 步骤S3、引入开源的消息队列MQ,并围绕树中每个结点的渲染和展示实现结点资 源消息的动态发布与订阅。 优选的,所述步骤S1中的资源数据为组织或区域或业务资源。 优选的,所述步骤S1中的资源数据在客户端或展示端以树状分布和渲染展示。 优选的,所述树结点的数据内容包括唯一的标识信息和所述资源数据的信息。 优选的,所述树结点渲染和展示出来的资源数据是动态变化的。 优选的,所述树结点的展开与收缩由用户触发。 优选的,所述树结点在客户端或展示端的屏幕上能有像素区域渲染出来即为结点 是渲染或展示状态,否则隐藏状态。 优选的,所述步骤S3中MQ具备消息发布与订阅的功能和机制。 优选的,所述步骤S3中结点资源消息的发布与订阅包括以下步骤: 步骤S31、所述MQ对所有的树结点资源的消息进行发布; 3 CN 111597184 A 说 明 书 2/4 页 步骤S32、所述MQ对删除的树结点资源的消息进行取消发布; 步骤S33、所述客户端或展示端对树结点资源的消息按每个结点的唯一标识进行 订阅; 步骤S34、客户端和展示端对隐藏或删除的结点进行动态取消订阅控制。 还公开了一种基于树形结构数据的消息发布与订阅的装置,包括n叉树,所述n叉 树用于渲染和展示资源数据分布,将资源数据作为n叉树的各结点,基于屏幕的有限显示区 域,通过对树结点的展开与收缩操作实现相应结点的动态渲染和隐藏控制,能够引入开源 的消息队列MQ,并围绕树中每个结点的渲染和展示实现结点资源消息的动态发布与订阅。 本发明的有益效果是: 本发明通过对屏幕和资源树的渲染与展示进行监测,筛选出实际渲染出来的资源 结点,并依赖MQ的消息发布与订阅机制,动态控制订阅或取消订阅特定的结点资源消息,有 效解决了业务系统中对树状分布资源的消息拥塞和资源状态展示不实时的问题,特别是在 资源特别多的时候,提升了在交互体验和消息实时性的效果。 附图说明 图1为本发明提出的一种基于树形结构数据的消息发布与订阅的方法的逻辑示意 图。
下载此资料需消耗2积分,
分享到:
收藏