- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于推送煤矿WEB实时监测技术
基于推送煤矿WEB实时监测技术
摘 要:推送技术以其实时性高和资源占用小等诸多优点,逐渐得到应用。首先介绍了煤矿Web实时监测系统发展现状,并分析了这一实时系统的主要特点;其次,对比了轮询和推送两种实时监测技术的工作原理及其优缺点;最后,介绍了推送技术的主要实现方式。
关键词:推送;实时;监测系统;轮询
中图分类号:TP391
近年来,煤矿各种安全事故频发,为保障煤矿安全生产和职工人身安全,防止煤矿事故,2006年底,国家安监总局发布的《关于修改〈煤矿安全规程〉第六十八条和第一百五十八条的决定》中明确指出:所有矿井必须装备矿井安全监控系统[1]。随后,越来越多的煤矿企业配备安装了各种安全监控监测设备,这大大提升了煤矿安全生产水平,降低了事故发生率。伴随着硬件装备的不断升级,与之配套的实时监测系统也得到了较快发展,尤其是基于B/S架构的Web实时监测系统,以其使用方便、易于维护、信息资料共享程度高等优点,被广泛应用于煤矿实时监测系统中。一些新的信息交互技术被应用于系统中,使得系统的实时性、友好性等方面都有了较大提升。目前,广泛采用轮询方式实现信息的实时展示,但这种效率低下的方式已经逐渐无法满足不断提升的煤矿Web系统的实时性要求,并且对网络带宽和服务端资源都造成了很大的压力。
针对上述情况,本文介绍了目前新兴的实时信息交互技术-推送技术,这一技术不仅为监测系统带来了更高的实时性,也极大的降低了服务器资源和网络带宽的压力,提升了煤矿安全生产管理的信息化水平。
1 实时监测系统的信息交互模式
煤矿实时监测系统,要求将监测到的最新数据在第一时间显示到系统中,以便监控人员及时根据信息做出响应。根据煤矿监测的特点,其监测的数据变化时间不定,有些数据的实时性很强,比如风速或瓦斯浓度等;另有一些数据,例如风门设备的开停状态,变化频率就很低。对于这种要求实时性高却数据更新周期不定的系统,就需要有一个数据交互机制来满足这类实时监测的要求。传统模式和基于推送技术的模式都可实现这类需求,但有截然不同的工作原理。
1.1 传统的实时监测模式
理想的实时监测系统应该是当服务端识别到数据发生变化时,立刻主动将数据发送给客户端。然而,HTTP作为客户端-服务器通信的标准协议,它是无状态的,而且在某种意义上来说,也是一种单向的协议。HTTP场景中所有通信都必须由客户端发起,至服务器结束,服务器端仅是被动等待客户端发出请求之后将数据传送给客户端。这与实时监测系统的场景要求恰好相反。为了实现数据更新,Web开发人员采用一种称为轮询的方式,客户端会以固定的时间间隔与服务器联系,查找是否有新数据可用,如图1所示,为轮询的工作原理。但这实际上是一种伪实时场景,数据虽然被以一定频率显示到客户端,但无法与数据更新频率完全一致,这种更新机制不是真正意义上的实时更新。
图1 轮询工作原理
从图1例子可知,这段时间内客户端以固定间隔请求服务器5次,服务器响应了5次,其中仅有2次响应包含了最新数据,且最新数据只是在数据更新之后的最近一次轮询响应后才发送到客户端。
轮询方式已经广泛用于煤矿Web监测系统中,其主要优点是实现简单。这种方式只要客户端加入定时获取数据的少量脚本代码,即可实现数据的持续更新。一些成熟的技术如Ajax,是目前最广泛的实现方式。
然而,轮询也存在着较大问题,主要有以下两方面:(1)资源消耗大。在大多数时候,轮询纯粹是浪费,因而服务器没有任何更新。这种方法不是没有代价的,它有两大问题。一方面,这种方法极度浪费网络资源。每一个轮询请求都会创建一个TCP套接字连接,套接字连接本身代价极高,需要服务器更多的CPU和内存资源;另一方面,每次请求都要在网络上传输一些数据,如果请求未在服务器上发现任何更新,那么这样的数据传输就是浪费带宽资源。(2)实时性差。考虑到轮询的频率,这样的更新并不是实时的。例如,轮询方式采用固定的时间间隔请求数据,如果在下一个请求周期到来之前,数据发生多次变化,用户将只能看到最后一次的新数据而错过某些数据,无法实时看到所有变化。这就要求请求的时间间隔与数据更新时间完全匹配,这对于数据更新周期不定的系统来说,是不可能的。对于需要以尽可能实时方式运行的应用程序来说,这样的等待也是不可接受的。考虑到如上两大问题,对于需要关键、实时的服务器端更新的企业应用程序而言,轮询并非最佳方案。
1.2 基于推送技术的实时监测模式
为解决轮询方式资源占用大和实时性差等问题,开发人员采用了一种称为推送的方式,实现了更为有效的Web实时监测系统。推送是一种主动从Web服务器发送数据到浏览器的机制。虽然HTTP协议并无相关配置来直接实现此机制,开发人员使用各种独创方法来绕过这些问题,从
文档评论(0)