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

        ?

        處理tibco中間件交互數(shù)據(jù)的通信系統(tǒng)設(shè)計與開發(fā)

        2018-04-15 18:27:23唐鋼信息自動化部胡運杰
        電子世界 2018年7期
        關(guān)鍵詞:發(fā)送數(shù)據(jù)觸發(fā)器進程

        唐鋼信息自動化部 胡運杰

        0 前言

        按照以往的慣例,數(shù)據(jù)庫用來保存數(shù)據(jù),而對數(shù)據(jù)的處理由相應(yīng)的進程處理。在以前的項目中有過類似的案例,通常的解決思路是MES將XML數(shù)據(jù)寫入本地數(shù)據(jù)庫。數(shù)據(jù)處理進程內(nèi)部會維護一個定時器,該定時器會定時觸發(fā)查詢數(shù)據(jù)庫的新數(shù)據(jù)。進程查詢到新數(shù)據(jù)后,把存儲通信數(shù)據(jù)的XML文檔從數(shù)據(jù)庫內(nèi)讀出,然后按照通信XML的格式進行解析,將解析的結(jié)果存入變量中,最后將解析完的的數(shù)據(jù)寫入數(shù)據(jù)庫。發(fā)送數(shù)據(jù)也一樣,先把待發(fā)送數(shù)據(jù)寫入數(shù)據(jù)庫,數(shù)據(jù)處理進程掃描到新數(shù)據(jù)后將數(shù)據(jù)封裝成XML文件,然后寫入數(shù)據(jù)庫再發(fā)送給MES。目前常用的處理方式有很多亟待解決的問題。所以需要一種全新的處理方法解決上述問題。

        1 解決思路

        原通信的數(shù)據(jù)處理方式簡單直觀,技術(shù)較成熟。但是有一些不能避免的缺點:數(shù)據(jù)流復(fù)雜,系統(tǒng)開銷大,由此導(dǎo)致處理效率低,資源占用高。為了保證數(shù)據(jù)處理進程處理數(shù)據(jù)的即時性,只能縮短數(shù)據(jù)處理進程對數(shù)據(jù)庫進行查詢的周期。這樣的話,即使數(shù)據(jù)庫中沒有新數(shù)據(jù)也要對數(shù)據(jù)庫進行查詢。為了保證通信就需要保持以高頻率查詢數(shù)據(jù)庫。同時數(shù)據(jù)先寫入本地數(shù)據(jù)庫,再由數(shù)據(jù)處理進程讀出解析,再寫入本地數(shù)據(jù)庫,這種處理方式也會額外占用磁盤的讀寫資源。綜上,這種處理方式會導(dǎo)致很多不必要的開銷,而且也不能完全彌補它自身的弊端。

        為縮短數(shù)據(jù)處理流程決定去掉后臺的數(shù)據(jù)處理程序,對新數(shù)據(jù)的處理采用觸發(fā)方式,收到新數(shù)據(jù)觸發(fā)解析,沒有新數(shù)據(jù)時沒有額外的資源開銷。減少數(shù)據(jù)的流轉(zhuǎn)過程,數(shù)據(jù)不再交由后臺進程處理,減少服務(wù)器硬盤讀寫操作,降低出錯幾率的同時減少磁盤資源占用,該部分數(shù)據(jù)的處理完全交給數(shù)據(jù)庫操作。數(shù)據(jù)庫直接解析或者封裝XML數(shù)據(jù)并保存處理后的信息。

        2 設(shè)計與實現(xiàn)

        2.1 接收數(shù)據(jù)的解析處理

        在與MES通信接口方式中采用傳遞XML文件的方式進行數(shù)據(jù)交換。XML作為輕量級的數(shù)據(jù)儲存文件非常適合系統(tǒng)間的數(shù)據(jù)交換,具有統(tǒng)一的標準語法,并且在傳遞過程中保留了諸如父/子關(guān)系這樣的數(shù)據(jù)結(jié)構(gòu)。在MES系統(tǒng)中由于采用了Tibco中間件,能夠簡單有效的處理XML文件,而在無人天車的系統(tǒng)中只能手動解析處理通信數(shù)據(jù)。

        在通信報文中有3條用于生產(chǎn)的步進梁跟蹤數(shù)據(jù)對時間要求較高,需要及時對該數(shù)據(jù)進行處理并下發(fā)給WMS系統(tǒng)。在WMS與A模塊系統(tǒng)中鋼卷信息與鋼卷實物的對應(yīng)關(guān)系依靠步進梁的跟蹤數(shù)據(jù)處理。如果步進梁跟蹤數(shù)據(jù)滯后或者不準確會導(dǎo)致嚴重的安全問題。其它生產(chǎn)數(shù)據(jù)也需要及時獲取并處理,所以及時準確與MES通信非常重要。

        在以前的技術(shù)解決方案中,數(shù)據(jù)庫不僅作為最后結(jié)果的存儲器,也可以用作各個處理進程間的“共享緩沖”使用。使用數(shù)據(jù)庫作為“共享緩存”的弊端就是速度慢、開銷大。經(jīng)過技術(shù)攻關(guān)決定采用新的數(shù)據(jù)處理結(jié)構(gòu),從根本上解決通信及時性問題。接收MES數(shù)據(jù)時,本地數(shù)據(jù)觸發(fā)器觸發(fā)新數(shù)據(jù)的解析處理,然后將解析后的數(shù)據(jù)存入本地。向MES發(fā)送數(shù)據(jù)時,本地數(shù)據(jù)庫觸發(fā)數(shù)據(jù)封裝處理,封裝完成后存入MES遠程數(shù)據(jù)表。很明顯如果這樣處理極大的提高了處理效率,并且降低了資源開銷。因為老的處理結(jié)構(gòu)并沒有把全部系統(tǒng)資源用于處理數(shù)據(jù),而是浪費在了等待、掃描新數(shù)據(jù)和無用的重復(fù)讀寫上面。

        2.2 XML文檔的結(jié)構(gòu)

        通過查閱有關(guān)XML的資料發(fā)現(xiàn),XML文檔雖然是線性存儲的文檔,但是其內(nèi)部的標準格式能保存完整的數(shù)據(jù)結(jié)構(gòu)。很多軟件都提供了對XML對象的支持。XML DOM文檔對象模型類是XML文檔的內(nèi)存中表示形式,DOM文檔對象模型能夠以編程方式讀取、處理和修改XML文檔。XML數(shù)據(jù)在內(nèi)存中表示是常見的結(jié)構(gòu)化方法,盡管實際的XML數(shù)據(jù)在文件中時或從另一個對象傳入時以線性方式存儲。

        2.3 構(gòu)建存儲過程

        在XML文檔結(jié)構(gòu)中,XMLNode對象是DOM樹中的基本對象。通過將XML文件轉(zhuǎn)換成對象,能夠用程方式操作XML文檔。通過查找、學(xué)習(xí)相關(guān)資料發(fā)現(xiàn)Oracle有一個包XMLDOM,可以很方便的處理XML對象。

        通過oracle的XMLDOM包解析出的數(shù)據(jù)直接插入數(shù)據(jù)表中。存儲過程運行于數(shù)據(jù)庫內(nèi)部,不需要再由程序?qū)?shù)據(jù)讀出來,所以減少了系統(tǒng)資源占用。在實際使用過程中發(fā)現(xiàn)數(shù)據(jù)庫的執(zhí)行效率非常高,解析時間在毫秒級,CPU占用率也極低。

        解決了XML數(shù)據(jù)解析問題后還存在一個問題,就是收到MES新數(shù)據(jù)后的觸發(fā)處理,這是解決通信數(shù)據(jù)處理及時性的關(guān)鍵。采用定時器掃描處理的方式有先天的弊端,并不適合對速度要求較高的環(huán)境。通過比較認為采用觸發(fā)器比較適用于及時處理通信數(shù)據(jù)。觸發(fā)器在數(shù)據(jù)庫以獨立的對象存儲,觸發(fā)器不需要顯示調(diào)用而是由一個事件啟動運行。

        這樣當(dāng)MES有新數(shù)據(jù)存入本地接口表時,在插入新數(shù)據(jù)前就會觸發(fā)解析新數(shù)據(jù)的存儲過程。存儲過程會把解析好的數(shù)據(jù)保存到相應(yīng)的表。MES發(fā)送的原始數(shù)據(jù)也插入本地接口表存檔。使用觸發(fā)器觸發(fā)新數(shù)據(jù)處理,免去了定時器對某個表的頻繁讀取,減輕了對數(shù)據(jù)庫的沖擊,能夠提高整個數(shù)據(jù)運行效率。數(shù)據(jù)庫解析過程對于上層程序來說是透明的,上層進程不需要知道數(shù)據(jù)來源,只需使用即可。

        2.4 發(fā)送數(shù)據(jù)封裝

        向MES發(fā)送的數(shù)據(jù)采用類似的處理方式,不用后臺進程處理,直接由oracle數(shù)據(jù)庫進行封裝,然后發(fā)送到MES的接口表。oracle對數(shù)據(jù)的封裝調(diào)用了oracle的DBMS_XML包,這個包能夠把SQL查詢的結(jié)果轉(zhuǎn)換成XML文件。最后將生成的XML文檔放入clob字段并發(fā)送給MES。封裝XML的過程重點是根據(jù)報文結(jié)構(gòu)構(gòu)造查詢結(jié)果集,查詢結(jié)果集要和生成的XML數(shù)據(jù)結(jié)構(gòu)一致,否則會生成錯誤的XML文件。

        3 結(jié)語

        經(jīng)過后期的應(yīng)用測試,去掉后臺處理程序后縮短了數(shù)據(jù)處理流程??s短數(shù)據(jù)流程后數(shù)據(jù)處理速度更加迅速,滿足了生產(chǎn)的實時性要求。新數(shù)據(jù)通過觸發(fā)的方式處理速度更加迅速,同時降低了服務(wù)器的資源占用。并且通過數(shù)據(jù)庫解析、封裝XML通信數(shù)據(jù),使數(shù)據(jù)與應(yīng)用程序的分層更加清晰。數(shù)據(jù)的問題全部交由數(shù)據(jù)庫處理,數(shù)據(jù)庫不僅是“容器”還作為“處理器”。前臺應(yīng)用程序只需調(diào)用現(xiàn)成處理好的數(shù)據(jù)。也為以后大項目的分工協(xié)作提供了新的方法。

        猜你喜歡
        發(fā)送數(shù)據(jù)觸發(fā)器進程
        移動自組網(wǎng)中MAC層協(xié)議研究
        債券市場對外開放的進程與展望
        中國外匯(2019年20期)2019-11-25 09:54:58
        基于馬爾科夫鏈的LoRaWAN網(wǎng)絡(luò)節(jié)點性能分析
        帶標記方式的CRDSA++協(xié)議性能分析*
        主從JK觸發(fā)器邏輯功能分析
        電子世界(2017年22期)2017-12-02 03:03:45
        使用觸發(fā)器,強化安全性
        使用IPSec安全傳輸數(shù)據(jù)
        社會進程中的新聞學(xué)探尋
        我國高等教育改革進程與反思
        Linux僵死進程的產(chǎn)生與避免
        日本午夜精品一区二区三区电影| 久久网站在线免费观看| 蜜桃视频第一区免费观看| 国产成人精品无码一区二区三区 | 中文字幕精品一区二区三区| 99久久超碰中文字幕伊人| 日本强好片久久久久久aaa| 亚洲av中文无码乱人伦在线咪咕| 亚洲午夜经典一区二区日韩| 亚洲熟妇色自偷自拍另类| 人与嘼交av免费| 久99久精品免费视频热77| 五月婷婷开心五月播五月| 成人a级视频在线播放| 精品爆乳一区二区三区无码av| 人妻无码一区二区19P| 国产一级黄色片在线播放| 曰本女人与公拘交酡| 日本夜爽爽一区二区三区| 国产一区二区三区高清视频| 日本一区二区视频在线| 99视频30精品视频在线观看| 久久亚洲Av无码专区| 天堂av一区一区一区| 黄色av一区二区在线观看| 99re热视频这里只精品| 亚洲ⅤA中文字幕无码| 久久综合伊人有码一区中文字幕| 少妇爆乳无码专区| 久久久久久久99精品国产片| 久久久2019精品视频中文字幕| 91三级在线观看免费| 日韩人妻无码精品久久免费一| 91亚洲国产成人aⅴ毛片大全 | 在线观看国产自拍视频| 国产公开免费人成视频| 久久精品国产亚洲av电影| 久久99热精品免费观看麻豆| 婷婷色婷婷开心五月四| 亚洲av第一页国产精品| 欧美日本国产亚洲网站免费一区二区|