一种b/s架构下基于实时缓存和主动推送的监控自动化系统客户端数据更新方式
优采云 发布时间: 2020-08-09 15:37一种b/s架构下基于实时缓存和主动推送的监控自动化系统客户端数据更新方式
【技术领域】
[0001]本专利涉及一种在基于B/S架构的自动化系统中通过实时数据缓存和主动推送实现数据监控的方式,属于电力系统自动化领域。
【背景技术】
[0002]传统监控自动化系统采用C/S架构,比较适宜分布式数据采集、集中监控的应用场合,其典型的应用领域包括传统能源、石化行业等,在电力系统中通常用于变电站、电厂等的运行监控。近年来,随着经济技术水平的不断提升,监控自动化系统的体系结构和应用规模都得到了很大的拓展,传统的C/S架构监控自动化系统早已无法满足分布式、大容量监控系统的需求,B/S架构监控自动化系统的应用比重不断扩大,其最大的优点是系统布署简便,具有良好的扩充能力,尤其适应数据来源分散,用户类型多元化的需求。
[0003]B/S架构在带来模式多样、部署灵活等优点时,其固有特性也影响了系统的性能。以浏览器作为数据终端平台的监控自动化客户端软件,常用的实时数据更新手段是由客户端定期发起更新恳求,在服务端进行数据扫描并将数据甚至是整个网页内容发送至客户端进行更新,对于较*敏*感*词*的监控自动化应用,画面可能多达数百幅,系统客户端最大并发数目以数百计,系统数据容量达到数十万直到数百万,采用传统的数据更新方案在系统数据采集规模下降到一定程度或是客户端并发量很大的情况下,此方法对服务器资源和网路带宽带来很大的压力,造成系统反应迟钝或响应不稳定。
[0004]目前,通过服务器推送代替客户端主动查询的技术早已在B/S架构软件中普遍使用,解决了上述缺陷中的一部分问题,即客户端频繁发起恳求及服务器频繁响应带来的资源占用问题,但单纯采用此技术对本应用领域带来的疗效不佳,其缘由包括:1)监视数据的刷新本质上是须要定时进行的,服务器推送多数仍以定时为主,如不对推送策略进行优化,实质上与客户端发起恳求形式差别不大。2)不管是进行数据推送还是数据恳求-响应操作,在服务端进行的数据库扫描没有区别,使用推送操作对这部份没有优化作用,而在WEB系统中对数据库进行定时扫描相当消耗资源。3)监控自动化系统所用的监控画面上的数据显示没有固定模式,同一画面上的数据可能有不同的数据来源和更新速度,在进行数据库扫描时也无法对查询进行优化。
[0005]可见,需要提供一种在B/S架构监控自动化系统中从数据采集模块(数据提供者)到客户端(数据消费者)整个流程上的优化的方式,以提升并稳定系统性能,满足应用需求。
【发明内容】
[0006]针对现有B/S构架中存在的上述问题,本发明提出了一种监控自动化系统客户端数据更新方式,通过对客户端监视画面所需数据进行实时缓存并使用可配置的推送手段实现B/S架构下自动化监控自动化系统中实现监控画面的数据手动刷新。其目的是在大数据量、高并发环境下保证B/S架构监控自动化系统信息显示的实时性、高效性,降低服务器及客户端资源需求。
[0007]本发明实现以上发明目的采用如下技术方案:一种B/S架构下基于实时缓存和主动推送的监控自动化系统客户端数据更新方式,其特点在于包括步骤:
[0008]I)在勾画生成监控图形时,对生成的图形文件进行解析,提取图形文件的图形-实时数据关联信息并保存;
[0009]2)客户端打开图形页面并进行初始化时,通过富互联网(RIA)技术进行图形文件读取并在客户端解析显示,服务端控制模块通过客户端的联接初始化信息对活跃客户端情况进行记录,将相关信息存储为激活图形-客户端关系表,进行数据推送注册,同时服务端控制模块按照图形中收录的各信息点参数从数据库中提取必要信息,为它们创建实时缓存。当信息点已在实时缓存中存在的情况下,则无需执行缓存创建操作。
[0010]3)数据采集模块、计算模块等数据生产者初始化完成开始生成数据信息点条目后即执行如下操作:将数据写入服务器数据库中,实现历史数据持久化保存;将当前早已收录于实时缓存中的信息点条目的最新值及其他必要信息写入实时缓存。
[0011]4)数据推送模块结合检测激活图形-客户端关系表、实时数据缓存,按照预先配置的推送策略为每位客户端的每位激活画面进行数据推送,推送数据为该画面当前收录信息点条目的子集。
[0012]5)侦测到客户端图形关掉时,服务端控制模块对激活图形-客户端关系表进行维护,取消相应的推送注册;对实时缓存中激活图形中使用的各个信息点条目进行维护,当测量到因为所有客户端对某个图形的使用均已结束,导致图形上所使用的某个个别信息点条目已无存活价值,将相应的信息点从实时缓存中删掉,并释放其占有空间。
[0013]本发明所述方式并不限制所采用的图形信息的具体化学格式,如采用流行的SVG(可缩放矢量图形)文件格式或其他自定义格式,不管对于何种图形信息格式,图形的自身的标示(索引)和图形中所须要进行实时更新的各个信息点的标示(索引)都是必然存在的,只要获取这种信息,就能够支持后续操作。
[0014]进一步地,在进行数据推送时,根据监控系统的不同需求,推送策略可使用依照固定间隔,数据变化率,按照画面区域分块等不同更新方法进行,其中数据变化率指画面上距离先前更新后经过给定时间后数据发生变化的比列。通过可配置的推送策略,可有效降低推送信息量,提高系统的并发性能。
[0015]实时缓冲的信息点条目维护、实时缓冲的信息点条目数据更新、数据推送是三个异步过程,有利于通过对各部份的实现细节调整实现最佳性能。
[0016]进一步地,当探测到所有客户端对某图形使用均已结束,可经过一个延时时间t以后再进行实时缓存清理操作,以防止用户在画面间进行切换时,反复对缓存进行清理/添加操作带来的性能损失。
[0017]该发明具有如下的有益疗效:
[0018]本发明通过对富互联网应用、动态维护的实时数据缓存及主动推送技术的结合使用,提高了 B/S结构监控自动化系统在客户端实时数据更新时服务器侧数据扫描、主动推送的效率,降低了网路带宽需求,提高了系统的响应能力。
【附图说明】
[0019]图1为本发明施行例的激活图形及注册过程;
[0020]图2为本发明施行例的关掉图形及取