亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Vert.x的實(shí)時(shí)Web監(jiān)控系統(tǒng)

        2015-10-18 07:39:10呂海東大連理工大學(xué)城市學(xué)院遼寧大連116600
        關(guān)鍵詞:服務(wù)器端實(shí)時(shí)性總線

        呂海東(大連理工大學(xué) 城市學(xué)院,遼寧 大連 116600)

        基于Vert.x的實(shí)時(shí)Web監(jiān)控系統(tǒng)

        呂海東(大連理工大學(xué)城市學(xué)院,遼寧大連116600)

        創(chuàng)新性地使用最新的Vert.x框架,利用其異步、非阻塞、實(shí)時(shí)性、高并發(fā)的工作模式,對(duì)現(xiàn)有的工業(yè)過程監(jiān)控系統(tǒng)進(jìn)行全面改造,極大提升了系統(tǒng)的響應(yīng)速度,實(shí)時(shí)性得到顯著提高,完全滿足大量客戶端并發(fā)的實(shí)時(shí)請(qǐng)求。

        Vert.x;過程監(jiān)控;PLC;數(shù)據(jù)推送

        0 引言

        工業(yè)生產(chǎn)監(jiān)控系統(tǒng)的Web化[1]已成為標(biāo)準(zhǔn),客戶端只使用瀏覽器即可實(shí)現(xiàn)對(duì)監(jiān)控?cái)?shù)據(jù)的實(shí)時(shí)顯示,不需要安裝各種監(jiān)控組件,簡(jiǎn)化了監(jiān)控系統(tǒng)維護(hù)。實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)的實(shí)時(shí)傳輸和顯示技術(shù)也在不斷地出現(xiàn),從傳統(tǒng)HTTP請(qǐng)求/響應(yīng)模式,到AJAX的Comet及HTML5的WebSocket,采用數(shù)據(jù)推送技術(shù),使得Web監(jiān)控系統(tǒng)的實(shí)時(shí)性得到極大提高。然而監(jiān)控服務(wù)器在面對(duì)大量客戶連接的并發(fā)請(qǐng)求時(shí),實(shí)時(shí)性難以滿足。無論JavaEE,還是NET都如此,它們的多線程工作模式是根源所在。為解決此問題,Vert.x框架[2-3]應(yīng)運(yùn)而生,它采用全新工作模式,特別適合開發(fā)實(shí)時(shí)性要求極高的系統(tǒng)。

        Vert.x是用于下一代異步、可伸縮、并發(fā)應(yīng)用的框架,輕量級(jí)的高性能JVM應(yīng)用平臺(tái),適合開發(fā)各種移動(dòng)及企業(yè)應(yīng)用。它徹底解決了業(yè)界遭遇C10K問題,即當(dāng)并發(fā)連接超過一萬以上時(shí),傳統(tǒng)技術(shù)會(huì)引發(fā)暫停。以Tomcat為例,它在超過100個(gè)并發(fā)長(zhǎng)請(qǐng)求就堵塞,而Vert.x可支持超10萬個(gè)并發(fā)請(qǐng)求。

        本文采用Vert.x對(duì)現(xiàn)有的供熱監(jiān)控系統(tǒng)進(jìn)行改造,對(duì)監(jiān)控服務(wù)器端和客戶端進(jìn)行重構(gòu)。在服務(wù)器端使用Vert.x的Web服務(wù)器取代現(xiàn)有Tomcat7,采用Vert.xTCP讀取西門子PLC300的監(jiān)控?cái)?shù)據(jù)。用戶端采用Vert.x的Event Bus Bridge技術(shù),實(shí)時(shí)接收服務(wù)器端監(jiān)控?cái)?shù)據(jù),改造后的監(jiān)控系統(tǒng)的性能和響應(yīng)速度比原有系統(tǒng)有顯著的提高。

        1 Vert.x框架概述

        Vert.x核心采用與Node.js相同的事件驅(qū)動(dòng)的異步工作模式,使用單線程的事件循環(huán)機(jī)制實(shí)現(xiàn)高并發(fā)的請(qǐng)求處理,而不像傳統(tǒng)的服務(wù)器采用多線程的模式。

        Vert.x的核心組件是Verticle,運(yùn)行在Vert.x實(shí)例中。Vert.x啟動(dòng)后,根據(jù)服務(wù)器CPU的內(nèi)核數(shù),自動(dòng)創(chuàng)建對(duì)應(yīng)的Vert.x實(shí)例,并發(fā)運(yùn)行Verticle。

        Vert.x采用事件驅(qū)動(dòng)的異步編程模式,通過觸發(fā)事件以及注冊(cè)事件處理器完成所有編程任務(wù)。Verticle之間不能直接調(diào)用,只能發(fā)送和接收事件實(shí)現(xiàn)協(xié)作。

        Vert.x的核心是事件總線,Verticle在事件總線發(fā)送和接收事件。事件總線是分布式的,能連接服務(wù)器和客戶端。事件總線支持點(diǎn)對(duì)點(diǎn)和發(fā)布-訂閱模式的事件傳輸,監(jiān)控系統(tǒng)中服務(wù)器向所有連接的客戶端發(fā)送監(jiān)控?cái)?shù)據(jù)就使用發(fā)布訂閱模式,使得所有客戶端瀏覽器都能實(shí)時(shí)接收到監(jiān)控?cái)?shù)據(jù)。

        2 實(shí)時(shí)監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        大連柳樹供熱公司監(jiān)控系統(tǒng)現(xiàn)場(chǎng)采用西門子PLCS7-300[4],通過屏蔽雙絞線連接到中心機(jī)房的核心交換機(jī)上,中心監(jiān)控主機(jī)CPU采用志強(qiáng)8核服務(wù)器,可并發(fā)運(yùn)行8個(gè)Vert.x實(shí)例,能支持十幾萬個(gè)并發(fā)請(qǐng)求。頁面采用最新的Bootstrap模版技術(shù)[5],自動(dòng)適應(yīng)不同尺寸的屏幕顯示,包括手機(jī)、平板等。

        2.1讀取PLC監(jiān)控?cái)?shù)據(jù)TCP編程

        西門子S7-300采用TCP FETCH WRITE通信方式[6],該模式下通過TCP協(xié)議的Socket,主機(jī)可與PLC進(jìn)行數(shù)據(jù)交換。

        Vert.x內(nèi)置TCP Client方法,如下是 TCP客戶端讀取PLC數(shù)據(jù)的代碼:

        客戶端定時(shí)發(fā)送數(shù)據(jù)指令,PLC數(shù)據(jù)到達(dá)后,Socket上的事件監(jiān)聽器工作,從回調(diào)函數(shù)中取得監(jiān)控?cái)?shù)據(jù),并轉(zhuǎn)換為JSON格式,使用總線方法publish發(fā)布事件??偩€上監(jiān)聽的Web客戶端都能同步接收監(jiān)控?cái)?shù)據(jù)。Vert.x采用推模式實(shí)現(xiàn)數(shù)據(jù)傳輸,由Vert.x服務(wù)器主動(dòng)發(fā)送數(shù)據(jù),不需客戶端請(qǐng)求,節(jié)省了網(wǎng)絡(luò)帶寬,提高了傳輸速度,滿足了監(jiān)控系統(tǒng)實(shí)時(shí)性。監(jiān)控系統(tǒng)的總體架構(gòu)如圖1所示。

        圖1 供熱監(jiān)控系統(tǒng)總體架構(gòu)圖

        在 Vert.x服務(wù)器中,可啟動(dòng)多個(gè)TCP客戶端Verticle,實(shí)現(xiàn)多路監(jiān)測(cè)數(shù)據(jù)的并發(fā)讀取,如下代碼展示主服務(wù)器依次啟動(dòng) Http Web Server和TCP Client監(jiān)控Verticle等實(shí)例。

        2.2監(jiān)控Web服務(wù)器的編程

        系統(tǒng)采用Vert.x的服務(wù)器模塊web-server~2.0,實(shí)現(xiàn)功能強(qiáng)大的Web服務(wù)器,并使用異步模式接收客戶端瀏覽器的HTTP請(qǐng)求,支持客戶高并發(fā)的HTTP連接請(qǐng)求,示意代碼如下。

        Vert.x通過deployModule載入Web模塊,Web模塊自動(dòng)將目錄/web作為站點(diǎn)發(fā)布目錄,在/web目錄中存儲(chǔ)站點(diǎn)的頁面文件。

        代碼中bridge:true表示將服務(wù)器端的事件總線延伸到Web客戶端,實(shí)現(xiàn)服務(wù)器和客戶端的數(shù)據(jù)傳輸。每個(gè)Verticle都可以在Event Bus注冊(cè)事件處理器,以此實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送。

        2.3監(jiān)控客戶端編程

        客戶端使用普通的HTML即可,不需要?jiǎng)討B(tài)頁面。為實(shí)現(xiàn)與Vert.x服務(wù)器的Event Bus通信,客戶端頁面需要引入Vert.x的 Event Bus Bridge的庫文件 vertxbus-2.1.js。

        監(jiān)控?cái)?shù)據(jù)顯示使用<div>,使用Bootstrap框架布局,將<div>懸浮在圖片指定位置。監(jiān)控客戶端頁面的數(shù)據(jù)接收和顯示代碼如下:

        代碼中關(guān)鍵是取得Vert.x的Event Bus對(duì)象,通過事件總線提供的vertx.EventBus,使用Javascript創(chuàng)建一個(gè)實(shí)例即可。如果與服務(wù)端的Event Bus連接成功,則eb.onopen回調(diào)函數(shù)工作。在此方法內(nèi),通過Event Bus的registerHandler對(duì)指定的地址進(jìn)行監(jiān)聽,當(dāng)有此地址的事件event到達(dá)時(shí),定義的回調(diào)函數(shù)function(args)開始運(yùn)行,參數(shù)args為事件中包含的JSON數(shù)據(jù),解析出JSON數(shù)據(jù),使用jQuery的函數(shù)html()將數(shù)據(jù)顯示在指定的<div>元素內(nèi),實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)的實(shí)時(shí)顯示。實(shí)時(shí)監(jiān)控系統(tǒng)監(jiān)控界面如圖2所示。

        Real-time Web based monitoring system based on Vert.x

        Lv Haidong
        (City Institute,Dalian University of Technology,Dalian 116600,China)

        This paper uses the innovative new Vert.x framework,which has the characters such as asynchronous,non blocking,real-time and highly concurrent,to improve the existing industrial process monitoring and control system.The response speed of the system is greatly enhanced,the real-time is greatly improved,and the real time request of a large number of clieats concurrency is completely satisfied.

        Vert.x;SCADA;PLC;data pushing

        TP274

        A

        1674-7720(2015)12-0080-02

        猜你喜歡
        服務(wù)器端實(shí)時(shí)性總線
        基于規(guī)則實(shí)時(shí)性的端云動(dòng)態(tài)分配方法研究
        基于PCI Express總線的xHC與FPGA的直接通信
        機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計(jì)
        淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用
        成功(2018年10期)2018-03-26 02:56:14
        基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡(luò)實(shí)時(shí)性仿真
        航空電子AFDX與AVB傳輸實(shí)時(shí)性抗干擾對(duì)比
        在Windows中安裝OpenVPN
        多通道ARINC429總線檢查儀
        一種車載Profibus總線系統(tǒng)的實(shí)時(shí)性分析
        基于EtherCAT總線的ROV控制系統(tǒng)設(shè)計(jì)
        河南科技(2014年16期)2014-02-27 14:13:22
        国产成人久久综合第一区| 亚洲免费一区二区av| 男人的精品天堂一区二区在线观看| 被灌醉的日本人妻中文字幕| 少妇无码太爽了在线播放| 精品久久久久久成人av| 性久久久久久久| 真实国产网爆门事件在线观看| 九九日本黄色精品视频| 伊人精品成人久久综合97| 久久亚洲精品中文字幕| 人妻少妇精品中文字幕av| 成年女人毛片免费视频| 99久久国语露脸国产精品| 亚洲高清激情一区二区三区| 国产精品黑丝高跟在线粉嫩| 久久婷婷人人澡人人爽人人爱| 初尝黑人巨砲波多野结衣| 久久久久久AV无码成人| 国产一级黄色片一区二区| 人妻少妇中文字幕在线| 国产裸体xxxx视频在线播放| www插插插无码视频网站| 午夜视频免费观看一区二区| 特级黄色大片性久久久| 欧洲成人一区二区三区| 久久久久香蕉国产线看观看伊| 久久99精品久久久久久齐齐百度| 杨幂二区三区免费视频| 一区二区三区四区草逼福利视频 | 久久亚洲精品无码va白人极品| av色综合网站| 少妇一级内射精品免费| 综合色免费在线精品视频| 无码av一区二区大桥久未| 欧美a视频在线观看| 亚洲国产欲色有一二欲色| 久久综合九色综合97婷婷| 久久精品国产av一级二级三级| 亚洲精品国产suv一区88| YW亚洲AV无码乱码在线观看|