許珍珍
摘要:該文介紹了基于WCF技術(shù)結(jié)構(gòu)的復(fù)烤加工數(shù)據(jù)同步服務(wù),主要負(fù)責(zé)實(shí)現(xiàn)浙江中煙與復(fù)烤企業(yè)之間的打葉復(fù)烤指標(biāo)數(shù)據(jù)傳輸任務(wù)。首先該文從傳輸模式和方式、同步標(biāo)識(shí)機(jī)制和同步系統(tǒng)智能與配置方面詳細(xì)介紹了基于WCF技術(shù)的同步架構(gòu)模式,然后基于同步架構(gòu)模式設(shè)計(jì)了同步系統(tǒng),最后該文展示了同步系統(tǒng)客服端和同步系統(tǒng)服務(wù)器端。通過基于WCF技術(shù)結(jié)構(gòu)的復(fù)烤加工數(shù)據(jù)同步服務(wù),實(shí)現(xiàn)浙江中煙與復(fù)烤企業(yè)之間的打葉復(fù)烤指標(biāo)數(shù)據(jù)傳輸任務(wù)。
關(guān)鍵詞:WCF技術(shù);同步服務(wù);傳輸模式;同步系統(tǒng)
中圖分類號(hào):TP202 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)06-0255-02
1 概述
浙江中煙工業(yè)有限責(zé)任公司(簡稱浙江中煙)擬通過復(fù)烤企業(yè)監(jiān)打過程數(shù)據(jù)共享研究及應(yīng)用項(xiàng)目的建設(shè),在打葉復(fù)烤質(zhì)檢環(huán)節(jié)建立質(zhì)量信息自動(dòng)采集平臺(tái),實(shí)現(xiàn)質(zhì)量數(shù)據(jù)自動(dòng)采集、現(xiàn)場反饋、各種質(zhì)量報(bào)表的自動(dòng)生成,實(shí)現(xiàn)打葉復(fù)烤質(zhì)量管理的水平和效率的極大提升。其中,數(shù)據(jù)同步系統(tǒng)負(fù)責(zé)實(shí)現(xiàn)浙江中煙與復(fù)烤企業(yè)之間的打葉復(fù)烤指標(biāo)數(shù)據(jù)傳輸任務(wù)。鑒于復(fù)烤企業(yè)監(jiān)打過程指標(biāo)特點(diǎn),同步數(shù)據(jù)類型涉及到基礎(chǔ)數(shù)據(jù)、實(shí)時(shí)數(shù)據(jù)和非實(shí)時(shí)數(shù)據(jù),同步方式為雙向同步,數(shù)據(jù)同步系統(tǒng)必須同時(shí)包含三種機(jī)制:手動(dòng)機(jī)制、實(shí)時(shí)機(jī)制和定時(shí)機(jī)制。
2 基于WCF技術(shù)的同步架構(gòu)模式
2.1 WCF概述
WCF是Windows通信基礎(chǔ)(Windows Communication Foundation)的縮寫。 WCF的基本特征是互操作性。這是微軟用于構(gòu)建面向服務(wù)的應(yīng)用程序的最新技術(shù)之一。根據(jù)基于消息的通信的概念中,一個(gè)HTTP請(qǐng)求可以被均勻地表示,WCF是一個(gè)統(tǒng)一的API而不管不同的傳輸機(jī)制,支持標(biāo)準(zhǔn)的Web Service,并且具有安全、穩(wěn)定、高效等特性。下面是WCF與其他技術(shù)的對(duì)比圖:
2.2 與復(fù)烤企業(yè)的數(shù)據(jù)同步架構(gòu)模式
數(shù)據(jù)同步系統(tǒng)架設(shè)在復(fù)烤廠的數(shù)據(jù)采集系統(tǒng)服務(wù)器和浙江中煙的物資管理平臺(tái)之間,并采用WCF分布式架構(gòu),這種統(tǒng)一的分布式服務(wù)接口可以同時(shí)使用C/S和B/S模式進(jìn)行系統(tǒng)開發(fā),可以跨進(jìn)程、跨機(jī)器甚至于跨平臺(tái)的通信,通過數(shù)據(jù)的收發(fā)模式來實(shí)現(xiàn)數(shù)據(jù)推送和接收XML格式數(shù)據(jù)。、
2.2.1 傳輸模式和方式
傳輸模式分為主動(dòng)發(fā)送模式和請(qǐng)求/響應(yīng)模式,兩種模式并存,以便在占用浙江中煙ESB總線資源盡可能少的前提下,保證數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性滿足遠(yuǎn)程監(jiān)視平臺(tái)需求。
主動(dòng)發(fā)送模式:對(duì)于實(shí)時(shí)傳輸?shù)闹笜?biāo),在檢測完成后,立即主動(dòng)發(fā)送到浙江中煙ESB數(shù)據(jù)總線,對(duì)于按班傳輸?shù)闹笜?biāo),在換班1小時(shí)后發(fā)送到浙江中煙ESB數(shù)據(jù)總線,對(duì)于按天傳輸?shù)闹笜?biāo),在凌晨1點(diǎn)發(fā)送到ESB服務(wù)總線。對(duì)于浙江中煙同步到復(fù)烤廠的數(shù)據(jù),也采用主動(dòng)發(fā)送模式傳輸。
請(qǐng)求/響應(yīng)模式:主要用于數(shù)據(jù)校驗(yàn)。數(shù)據(jù)同步傳輸服務(wù)周期性的校驗(yàn)已傳輸?shù)秸憬袩煹臄?shù)據(jù)與復(fù)烤廠本地?cái)?shù)據(jù),如果發(fā)現(xiàn)差異,便進(jìn)行同步。具體校驗(yàn)方式在系統(tǒng)概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)中描述。
傳輸方式:數(shù)據(jù)同步分為自動(dòng)和手動(dòng)兩種。在主動(dòng)發(fā)送模式和請(qǐng)求/響應(yīng)模式中,數(shù)據(jù)同步均自動(dòng)進(jìn)行,但保留手動(dòng)的功能。
2.2.2 同步標(biāo)識(shí)機(jī)制
在復(fù)烤廠端的數(shù)據(jù)庫表結(jié)構(gòu)和中煙批次數(shù)據(jù)庫中添加同步需要滿足橫向和縱向的數(shù)據(jù)同步標(biāo)識(shí),以滿足更復(fù)雜的表數(shù)據(jù)結(jié)構(gòu)的需求。通過這種同步機(jī)制同步到中煙的數(shù)據(jù)需要進(jìn)行一次握手信號(hào)才確認(rèn)已經(jīng)同步成功,并不是只要數(shù)據(jù)從客戶端發(fā)出就標(biāo)記為同步,這樣可以有效的避免因網(wǎng)絡(luò)問題造成的數(shù)據(jù)丟失。
2.2.3 同步系統(tǒng)智能與配置
數(shù)據(jù)同步系統(tǒng)通過對(duì)每家復(fù)烤廠每個(gè)指標(biāo)的同步參數(shù)設(shè)置,實(shí)現(xiàn)按時(shí)、按頻次、把復(fù)烤廠的數(shù)據(jù)同步傳輸?shù)秸憬袩煹姆?wù)器。
數(shù)據(jù)同步系統(tǒng)實(shí)現(xiàn)數(shù)據(jù)同步校驗(yàn)功能,通過定期對(duì)復(fù)烤廠和浙江中煙兩端的數(shù)據(jù)進(jìn)行對(duì)比校驗(yàn)并對(duì)錯(cuò)誤數(shù)據(jù)進(jìn)行自動(dòng)修復(fù)操作,確保不遺漏,不多出的無效數(shù)據(jù)同步到中煙,確保了數(shù)據(jù)的嚴(yán)密性與準(zhǔn)確性。
同步數(shù)據(jù)信息自動(dòng)提示,更加方便地知道同步數(shù)據(jù)的實(shí)時(shí)傳輸數(shù)據(jù)狀態(tài)信息,并可以直觀地反映出同步數(shù)據(jù)成功與失敗。
同步系統(tǒng)基本同步機(jī)制圖如下:
3 數(shù)據(jù)同步系統(tǒng)的設(shè)計(jì)
本系統(tǒng)采用3層C/S架構(gòu),基于WPF、WCF架構(gòu)及MVVM模式設(shè)計(jì),架構(gòu)如下:
3.1 數(shù)據(jù)同步系統(tǒng)客戶端
服務(wù)客戶層基于WCFWebSerivice設(shè)計(jì),細(xì)分為:表示層、邏輯層、數(shù)據(jù)層、服務(wù)層。表示層處理人機(jī)交互,邏輯層處理事件與業(yè)務(wù)邏輯,數(shù)據(jù)層負(fù)責(zé)數(shù)據(jù)讀寫,服務(wù)層提供WebService服務(wù),架構(gòu)如下:
3.2 數(shù)據(jù)同步系統(tǒng)服務(wù)端
服務(wù)層基于WCFWebSerivice設(shè)計(jì),細(xì)分為:表示層、邏輯層、數(shù)據(jù)層、服務(wù)層。表示層處理人機(jī)交互,邏輯層處理事件與業(yè)務(wù)邏輯,數(shù)據(jù)層負(fù)責(zé)數(shù)據(jù)讀寫,服務(wù)層提供WebService服務(wù),架構(gòu)如下:
4 數(shù)據(jù)同步系統(tǒng)
數(shù)據(jù)同步系統(tǒng)客戶端的主要操作有新增服務(wù)節(jié)點(diǎn)、服務(wù)管理和同步數(shù)據(jù)配置表管理。界面如下圖所示。
數(shù)據(jù)同步系統(tǒng)服務(wù)器端的主要操作有服務(wù)管理、查看活動(dòng)客服端、活動(dòng)客戶端服務(wù)節(jié)點(diǎn)管理、每家復(fù)烤廠同步信息配置管理以及客戶端視圖管理等。界面如下圖所示。
5 結(jié)束語
基于WCF技術(shù)結(jié)構(gòu)的復(fù)烤加工數(shù)據(jù)同步服務(wù)采用WCF分布式架構(gòu),充分考慮到打葉復(fù)烤企業(yè)的特殊性,在傳輸模式和方式、同步標(biāo)識(shí)機(jī)制和同步系統(tǒng)智能與配置方面做了特殊的處理,最后設(shè)計(jì)了同步系統(tǒng)客戶端和服務(wù)器端,更好實(shí)現(xiàn)了浙江中煙與復(fù)烤企業(yè)的數(shù)據(jù)同步。
參考文獻(xiàn):
[1] 顧悅, 王建軍. 基于WCF的遠(yuǎn)程數(shù)據(jù)訪問技術(shù)研究[J]. 電腦知識(shí)與技術(shù), 2010, 06(11): 8675-8676.
[2] 吳清壽. 基于WCF的分布式系統(tǒng)模型研究與實(shí)現(xiàn)[J]. 吉林師范大學(xué)學(xué)報(bào)(自然科學(xué)版), 2012(03).
[3] (美)Steve Resnick, (美)Richard Crane, (美)Chris Bowen. WCF核心技術(shù)[M]. 人民郵電出版社, 2009.
[4] 董昕馨. 基于WCF的數(shù)據(jù)庫訪問技術(shù)淺析[J]. 數(shù)字技術(shù)與應(yīng)用, 2016(1).