基于web的推送技术在风险预警系统中的应用
2016-09-26罗广阳许军武汉邮电科学研究院湖北武汉430074武汉虹信服务有限公司湖北武汉430074
罗广,阳许军(.武汉邮电科学研究院 湖北 武汉 430074;.武汉虹信服务有限公司 湖北 武汉 430074)
基于web的推送技术在风险预警系统中的应用
罗广1,阳许军2
(1.武汉邮电科学研究院 湖北 武汉 430074;2.武汉虹信服务有限公司 湖北 武汉 430074)
为解决风险预警系统因传统web系统请求/响应模式而造成信息延迟的问题,本文提出了一种基于web服务器主动推送技术的风险预警系统的的方案,并阐述了此方案的关键技术以及具体实现。本风险预警方案通过使用基于HTTP长链接的Comet技术,具备了在web页面不重新刷新的情况下预警风险风险的能力。该系统一旦检测到风险,能够及时预警,因此,该系统满足设计需求,该方案是可行的。
服务器推送;风险预警;数据库技术;Comet;web
随着IT技术的发展,越来越多的应用开始使用B/S架构。在传统的请求/响应模型中,服务器监听来自于客户端浏览器端的HTTP请求,一旦接收到请求,web服务器立即作出相应,向客户端浏览器发送HTTP响应报文。对于客户端浏览器而言,B/S模型是一种被动的模型,除非浏览器发送请求,否则客户端浏览器接收不到来自服务器的任何响应。
对于大部分web应用程序,传统模式可以满足需求,但是,随着IT技术的应用领域日益广泛,越来越多的新业务需求出现在web应用程序中,传统模式开始出现弊端,无法完成业务需求。
风险预警是一个web技术新的应用领域。风险预警是一种需要高实时性的web应用程序,在风险预警系统中,一旦服务器检测到风险产生,为保证风险预警的实时性,需要立即推送预警,而不是等待客户端浏览器页面刷新时发送请求,重新加载数据。
近些年兴起的服务端主动推送技术为为风险预警系统提供了很好的解决方案。在风险预警系统中,使用的服务端主动推送技术是Comet技术。Comet技术是一种基于HTTP长链接的技术,与AJAX更新数据模式不同,Comet技术只有在服务器有数据更新时才向客户端浏览器发送数据,当客户端浏览器接收完数据是并不和web服务器断开连接,而是继续等待下一次服务器的数据更新。直到其中一方发送断开连接报文,或者有超时或网络错误发生,链接才会打开。因此,较其他主动推送技术Ajax轮循技术而言,Comet技术更加节省网络资源。
1 系统结构
本风险预警系统是一个典型的web应用程序,主要分为web服务器、web页面、底层数据持久层3个部分,系统结构图如图1所示。在本系统中,web服务器起到了重要的作用。一方面,web服务器可以从底层数据接入层读写数据,为web页面提供用户登陆、配置风险预警参数、用户权限控制等功能;另一方面,web服务器也在收到web页面请求之后,与web页面建立预警推送通道,一旦接收到预警信息,主动发起风险预警。
图1 系统结构图
Web页面提供了用户操作界面。系统所涉及人员分为两种,一种是用户,即系统操作人员;另一种则是客户,即操作对象。本系统主要面向操作人员提供风险预警功能,预警客户业务数据的风险。
2 关键技术及具体实现
2.1个性化预警参数的配置
本风险预警系统通过配置客户风险预警参数,来提供个性化的风险预警功能。客户风险预警参数为系统每一位客户在每一个可能存在风险的业务项下提供个性化的参数配置,风险信息抓取程序能够根据风险预警参数提供个性化风险预警服务。
风险获取程序在获取预警信息时,将会在底层数据持久层获取风险预警参数,以此参数为不同客户、不同业务配置个性化风险预警标准。风险捕获程序在捕获风险信息时,将会查询底层数据接入层是否保存有对应客户风险预警参数,若存在,则以客户风险预警参数作为缺省风险预警参数;否则,则以默认风险预警参数作为缺省风险预警参数,抓取风险数据。
图2 风险预警参数的获取
2.2预警信息获取
预警信息的获取主要有两种方式。一种方式是页面加载时,使用AJAX技术,通过页面向web服务器发起请求,web服务器通过查询底层数据持久层查询风险预警信息,获取风险预警数据,通过HTTP响应将数据发送给web页面。第二种方式是通过风险获取程序获取通过定时高频检索数据持久层,及时获取预警信息,通过web服务器风险预警接口向web服务器发送预警通知,web服务器风险预警接口一旦接收到风险通知,立即向web页面推送风险预警信息。文中主要描述的是第二种预警信息的推送方式。
2.3服务器主动推送
服务器主动推送技术是本风险预警系统最关键的技术,此技术为web服务器及时预警风险提供了保证。目前常用的服务器推送技术是AJAX轮询技术以及基于HTTP长连接的Comet技术。
作为一种被广泛使用的web应用程序开发技术,AJAX技术在web应用程序开发中日益流行。AJAX轮询技术是一种以AJAX技术为核心的服务器推送技术。在AJAX引擎中的XMLHttpRequest对象通过周期请求的方式定时访问服务器来获取新的数据,服务器程序通过向与AJAX通信建立的临时通道中写入数据,其后,客户端接收新数据,解析并获得数据内容,然后Javascript脚本修改页面 DOM对象实现用户界面的更新。
Comet技术与AJAX轮询技术类似,主要不同之处是Comet技术通过建立一个和服务器端的长连接,当服务器端有新的数据需要发送给客户端时,才向长连接持久管道中写入数据,客户端浏览器通过接收并解析获得新的数据,并将新的数据写入到DOM中,通过页面进行风险预警。
Comet技术很好的解决了在风险预警系统中遇到的问题。一方面,Comet技术通过建立HTTP长连接,减少客户端和服务器端的通信量,只有在新数据到来时才产生服务器和客户端的通信。另一方面,消息将不会延迟。在浏览器/服务器通信过程中,web服务器/客户端浏览器之间HTTP连接一直打开,服务器端传输数据的方式是以主动传输的方式进行,不用等待客户端请求后再传输,通信的双方消息将是实时同步的。
在风险预警系统中,一旦页面完成加载,客户端浏览器发起长连接请求,web服务器响应请求,建立HTTP长连接,供web服务器发起主动推送功能。此时,若服务器接口捕获风险预警,web服务器发起响应,更新风险信息,发起预警。
图3 主动推送流程
2.4风险预警信息的清除
本风险预警系统使用的风险预警信息来自于底层数据接入层,有风险捕获程序产生,产生后本系统在底层数据接入层查询数据,向web页面预警风险。系统风险预警详情页面提供进入业务系统接口,可以处理风险信息,一旦处理完成,风险预警自动清除。风险预警信息清除后,页面重新加载,更新风险预警信息。
2.5风险预警推送测试
通过向web服务器风险预警接口发送模拟数据实现风险预警推送测试。在测试过程中,web服务器向web页面推送预警信息,在此过程中,页面没有重新进行加载,web页面接收到推送信息,JavaScript脚本程序将风险数量写入一级菜单风险管理处,以数字向用户预警风险。同时,进入风险预警功能模块已经风险详情页面,可查询风险预警列表和风险预警相信信息。
图4 风险预警信息列表
图5 风险管理
3 结 论
本文介绍了一种基于服务器主动推送的风险预警方案,重点阐述了基于HTTP长连接的Comet技术在本风险预警技术中的应用。通过使用Comet技术,一旦服务器接收到风险预警,能立即向web页面推送预警信息,不用再等待页面刷新才更新数据。本风险预警方案在web应用程序中起到重要作用,能及时查找出危险、敏感的业务数据,为web应用程序稳定性、安全性提供了保障。
[1]陈航,赵方.基于服务器推送技术和XMPP的Web IM系统实现[J].计算机工程与设计,2010,31(5):925-928,994.
[2]孙君曼,方华京.基于推送技术的网络化监控报警系统[J].计算机工程,2008(4):269-271.
[3]曾维红,陈铁军,孟丽,等.基于技术的主动信息服务系统设计与实现[J].计算机工程与设计,2005,11(11):2893-2894.
[4]孙清国,朱玮,刘华军,等.Web应用中的服务器推送技术研究综述[J].计算机系统应用,2008(11):116-120.
[5]景慎艳.基于PUSHLET的服务器推送技术的研究与应用[J].现代计算机,2009(10):132-134.
[6]李明,陈苏,张雨,等.计算机网络中的Push技术[J].计算机工程,2000,26(6):29-31.
[7]王茜,谢萍,王颖.基于Hadoop的同步相量数据处理平台性能分析[J].电力信息与通信技术,2014(9):1-5.
[8]王峰,刘蓓莉,冯玉森.基于Hi3516的Web视频监控系统的设计与实现[J].电子科技,2013(10):62-63.
[9]徐淑萍,李军,张军,等.嵌入式Web服务器软件的设计与实现[J].西安工业大学学报,2014(3):193-198.
Web-based push service applications in risk early warning system
LUO Guang1,YANG Xu-jun2
(1.Wuhan Research Institute of Postal and Telecommunications,Wuhan 430074,China;2.Wuhan Hongxin Technology Service Co.,Ltd.,Wuhan 430074,China)
In order to solve the risk early warning system for the request/response mode of traditional web system caused by the information delay problem,this paper proposes a risk warning system based on active web server push technology,and expounds the key technology of the scheme and implementation.The risk early warning scheme is based on the HTTP long link Comet technology,with the ability of risking early warning without refreshing the web page.Once the system detected the risk,can timely warning,so the system satisfies the design need,this plan is feasible.
server push;risk early warning;database technology;comet;Web
TN02
A
1674-6236(2016)11-0046-03
2015-06-15稿件编号:201506160
罗 广(1989—),男,湖北武汉人,硕士研究生。研究方向:计算机软件与技术,互联网,软件开发。