马斌炜
摘 要:目前,可以将SSJS技术应用到电力实时生产系统中,从服务器端的角度对通信效率和质量进行改善,并减少网络流量和缩短延时。简要分析了电力实时生产系统中SSJS技术的应用,希望可以提供一些有价值的参考意见。
关键词:电力生产系统;SSJS技术;AJAX技术;JavaScript
中图分类号:TM73 文献标识码:A DOI:10.15913/j.cnki.kjycx.2015.12.160
电力系统包括多个环节,比如发电、变电、输电和配电等,电厂、电站和电网等都是其非常重要的组成部分。目前,电力系统的自动化程度在不断提升,Web化的电力生产系统和客户端因可有效共享和交互数据,在较大程度上补充了原有的电力生产系统。特别是应用了AJAX技术,它只需要将数据发送给Web服务器,具有较大的优势,在电网调度、故障分析和电厂电站的远程监控等方面得到了广泛应用。在时代飞速发展的今天,厂站有着较高的自动化水平,电力生产系统Web化有着较大的需求,但核心技术AJAX采用的是HTTP1.0协议标准,因此,实时全双工通信无法真正实现,不具备复杂环境下的动态计算能力,且在通信过程中,很多带宽资源都被公共信息占用。为了解决这些问题,需要应用SSJS技术,可以将计算控制等一系列操作应用于服务器端。
1 SSJS理论技术
SSJS指的是在服务器端的JavaScript解释器上运行SSJS,这样JavaScript就不再局限于传统客户端的编程范围,在服务器端的一系列操作中都可以运用,比如Web服务、后台解释、通信事件控制和数据库操作等。其中,最早在伦敦奥运会的Games Shop中应用了SSJS理论技术。
目前,结合服务器端的推送技术,实现了实时Web应用,包括AJAX、长轮询和流解决方案等。AJAX是指异步JavaScript与XML,在XML HTTP REQUEST上运行AJAX,客户端将请求发送出来,并提取服务器端的请求内容,采用异步加载内容的方式,可有效减少一次通讯的数据量和服务器定时通信,以便更新数据,该Web工作模式得到了广泛应用,借助于本项技术,可跨领域共享广域信息;长轮询也称为长链,其基础为AJAX技术,相较于AJAX轮询,长轮询有着不同的一次查询目标,要求返回确定需要的数据,且完成每次轮询后,可以以无结果存在于每次结束后的结果中,长轮询的优势是打破了一次加载模式,请求次数得到了减少,但浏览器在长期使用的过程中会逐渐积累缓存,进而产生较大的服务器资源消耗。
2 基于SSJS技术的系统构建
2.1 客户端和服务器支持情况
通常情况下,电力生产系统将Web服务器作为Web应用器客户端,因此,只有浏览器的支持,可应用WebSOCKER。在已有的桌面浏览器中,FIREFOX、OPERA等对WebSOCKET都是支持的,WebSOCKET也开始被IE10支持。在服务器方面,很多WebSOCKET服务器,比如netty、kaazing等。其中,基于SSJS理念下的最优运行环境为node.js。
2.2 系统框架设计
系统通常应用了多线程技术,对于浏览器端WebSOCKET对象的连接要求而言,可用单独的线程封装IP和端口号来监听。如果有请求被监听到,则服务器会对客户端的WebSOCKET握手信息进行解析,然后用TCP协议替换HTTP协议,并将应答信息返回给客户端。客户端浏览器将WebSOCKET连接请求发送给服务器利用的便是JavaScript。
2.3 系统测试
为了降低测试难度,本文在嵌入式服务器方面选择了JETTY,它有着较快的运行速度,动态部署可被测试支持,客户端的输出显示采用程序调试输出。在测试过程中,利用某一客户端将消息发送给服务器端,并将数据信息返回给本客户端,同时,将数据信息主动推送给其他已连接的指定客户端,分析各个部分的显示输出;确定本次运行的客户端在服务器上成功注册了ID编码唯一的一个WebSOCKET连接;借助服务器对数据进行动态处理,并向广播实时返回处理后的结果,以便测试系统的实时通信;服务器对ID唯一的客户端发送消息进行了接收,且本客户端不仅将消息发送到了服务器,还接收到了经服务器动态处理数据后的返回消息。此外,服务器对数据动态进行处理后,主动发出的广播消息也被第三个客户端同步接收到。由此可见,本设计方案是可行的,能可靠地传输数据。
3 结束语
综上所述,在电力系统Web化的过程中,实施应用了SVG,这样解决了B/S模式应用图形支持能力欠缺的问题;在动态发布SVG实时数据的过程中,通过应用实施AJAX,对页面刷新造成的页面闪烁问题和cookie暂存法加重客户端工作负荷等进行了解决,交互性能得到了明显提升。但并没有有效减少服务器端的压力,B/S模式下的系统无法快速处理大量客户端的请求和海量数据。针对这种情况,将SSJS技术应用到电力实时生产系统后,和目前的系统相比,大大减少了网络流量,网络时延得到了缓解,系统的通信效率和通信性能得到了明显提升。
参考文献
[1]王瀛洲,韩璞.SSJS技术在电力实时生产系统中的应用[J].计算机仿真,2013,2(8):123-125.
[2]李志恒.基于生产实时系统在线仿真技术探讨[J].电力信息与通信技术,2008,2(9):133-135.
〔编辑:张思楠〕