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

        ?

        基于WCF技術(shù)構(gòu)建分布式數(shù)據(jù)服務(wù)

        2013-04-13 08:21:52楊遠(yuǎn)超
        鐵道勘察 2013年5期
        關(guān)鍵詞:服務(wù)端數(shù)據(jù)服務(wù)勘測

        楊遠(yuǎn)超

        (中鐵第一勘察設(shè)計院集團有限公司, 陜西西安 710043)

        1 鐵路勘測設(shè)計數(shù)據(jù)的分類與組織

        在鐵路勘測設(shè)計過程中,除了少部分的描述性文本資料外,各專業(yè)的文件大都可以用地理坐標(biāo)系和線路坐標(biāo)系來標(biāo)識。以地理坐標(biāo)系來描述的成果多為勘測類數(shù)據(jù),如各類控制點、地形圖、地質(zhì)圖等,這些數(shù)據(jù)的空間特性需要二維或三維坐標(biāo)來描述。以線路坐標(biāo)系來描述的成果多為專業(yè)設(shè)計數(shù)據(jù),與鐵路相關(guān)的數(shù)據(jù)的空間特性轉(zhuǎn)化為沿鐵路線的一維標(biāo)識(即線路里程)。通過線路曲線和斷鏈信息,可以將勘測設(shè)計成果數(shù)據(jù)在地理坐標(biāo)系和線路坐標(biāo)系間轉(zhuǎn)換,坐標(biāo)轉(zhuǎn)換需要考慮地理坐標(biāo)系的分帶和線路坐標(biāo)系的所屬方案等問題。

        將一條鐵路線的勘察設(shè)計定義為一個項目,以方案和坐標(biāo)為關(guān)鍵字來建立各專業(yè)數(shù)據(jù)庫,各專業(yè)數(shù)據(jù)庫間的數(shù)據(jù)接口參照正式頒布的數(shù)據(jù)接口標(biāo)準(zhǔn)來建立。某個專業(yè)一旦完成某項工作,就將結(jié)果存入數(shù)據(jù)庫,同時發(fā)布消息,通知后續(xù)專業(yè)使用。專業(yè)數(shù)據(jù)可抽象為文件類和表格類數(shù)據(jù)。文件類數(shù)據(jù)是指以各種文件格式存儲的專業(yè)勘測設(shè)計數(shù)據(jù),包括各類圖片、圖形、文本、電子表格文件,這類數(shù)據(jù)在數(shù)據(jù)庫中都以BLOB對象進行存儲,導(dǎo)入數(shù)據(jù)庫時將文件轉(zhuǎn)換為二進制數(shù)據(jù)流,獲取數(shù)據(jù)時將其還原為對應(yīng)格式的文件。表格類數(shù)據(jù)是指在專業(yè)數(shù)據(jù)庫中以數(shù)據(jù)庫表格形式存儲的數(shù)據(jù),可使用SQL語言直接解析數(shù)據(jù)的全部屬性。數(shù)據(jù)分類與組織如圖1所示。

        圖1 鐵路協(xié)同設(shè)計平臺的數(shù)據(jù)分類與組織

        2 WCF技術(shù)簡介

        WCF(Windows Communication Foundation)是微軟公司為構(gòu)建面向服務(wù)的應(yīng)用提供的分布式通信編程框架,可以用它構(gòu)建跨平臺,安全、可靠和支持事務(wù)處理的企業(yè)級互聯(lián)應(yīng)用解決方案。其基礎(chǔ)的技術(shù)架構(gòu)如圖2所示。

        圖2 WCF技術(shù)架構(gòu)

        如圖2所示,WCF服務(wù)端向客戶端提供一些可用的功能,如服務(wù)1、2、3,WCF客戶端通過終結(jié)點來訪問WCF服務(wù),一個服務(wù)端至少要提供一個終結(jié)點供客戶端使用。服務(wù)端的終結(jié)點,由“ABC”構(gòu)成,Address(地址)解決在哪里找到服務(wù)的問題;Binding(綁定)解決如何與服務(wù)進行通訊的問題;Contract(契約)解決服務(wù)是一些什么內(nèi)容的問題。

        一個WCF服務(wù)需要在一個可運行的程序中寄宿,可以把宿主理解為WCF運行的容器。在客戶端訪問服務(wù)之前,服務(wù)必須通過宿主程序發(fā)布出來。常用的WCF寄宿方式包括:自寄宿、IIS寄宿、Windows激活服務(wù)、Windows服務(wù)。根據(jù)面向服務(wù)的原則,激活和宿主類型的變化不會影響服務(wù)本身的特性和外部對該服務(wù)的訪問,這樣就可以根據(jù)實際部署的需要靈活選用各類寄宿方式。在實際應(yīng)用中,以IIS寄宿類型居多,本文將也以IIS宿主程序為例,介紹如何構(gòu)建分布式數(shù)據(jù)服務(wù)。

        3 分布式數(shù)據(jù)服務(wù)的建立

        3.1 建立數(shù)據(jù)服務(wù)端程序

        首先以管理員身份啟動Microsoft Visual Studio 2010程序(操作系統(tǒng)為 Windows Server 2008),點擊文件—新建—項目,打開一個對話框,在左側(cè)的模板中選擇編程語言(如Visual C#),然后選擇“WCF”,在隨后出現(xiàn)的類型中選擇“WCF服務(wù)程序”,依次填入項目的名稱、項目文件路徑和解決方案名稱,最后點擊“確定”,創(chuàng)建一個WCF服務(wù)程序。

        然后按照微軟的推薦做法,先在形如IServiceRealScene.cs(RealScene為項目名稱)的文件中定義數(shù)據(jù)服務(wù)的接口(IServiceRealScene)和數(shù)據(jù)契約。如本項目中定義了項目、分帶坐標(biāo)系、方案、專業(yè)、存儲格式、線路曲線、斷鏈、坡度、設(shè)計標(biāo)準(zhǔn)類型、設(shè)計標(biāo)準(zhǔn)等數(shù)據(jù)類型,用作接口服務(wù)的參數(shù)定義。服務(wù)接口程序的定義則根據(jù)需要訂制,可以自由選擇其參數(shù)和返回值類型。如示例項目就定義了從總服務(wù)器查詢專業(yè)數(shù)據(jù)的注冊信息以及根據(jù)注冊信息索引從專業(yè)數(shù)據(jù)庫提取、更新數(shù)據(jù)的各類服務(wù)。在定義的數(shù)據(jù)服務(wù)中,如果需要返回一個通用的xml文檔(即System.Xml.XmlDocument類型),則需要在接口定義前加上形如[XmlSerializerFormat]字樣的標(biāo)記,否則客戶端程序?qū)⒉荒苷_識別接口,導(dǎo)致程序編譯錯誤。需要特別說明的是,如果編寫的服務(wù)要實現(xiàn)分布式事務(wù),在不同的數(shù)據(jù)庫中提交數(shù)據(jù)更改,則在定義服務(wù)接口時需要在接口定義前加上[TransactionFlow(TransactionFlowOption.Allowed)]字樣的標(biāo)記,表示服務(wù)操作愿意接受來自客戶端的傳入事務(wù)。

        最后,打開形如ServiceRealScene.svc(RealScene為項目名稱)的文件,在其中編寫數(shù)據(jù)服務(wù)接口的實現(xiàn)代碼,在上一步驟中定義的每一個數(shù)據(jù)服務(wù)接口都必須在此實現(xiàn)。給繼承自接口IServiceRealScene的類ServiceRealScene加上[ServiceBehavior(Instance ContextMode=InstanceContextMode.PerCall,Concurrency Mode=ConcurrencyMode.Multiple)]字樣的標(biāo)記,用來指示其服務(wù)行為中的實例控制、并發(fā)控制模式。服務(wù)端實例控制采用了PerCall實例策略,每個客戶端的請求消息都會被分發(fā)到一個新的服務(wù)實例上。而一旦這個調(diào)用返回后,服務(wù)實例則會被銷毀。并發(fā)控制模式為Multiple,表示W(wǎng)CF不會主動為服務(wù)操作添加任何鎖,每個操作都允許客戶端多個請求同時訪問,這樣做的好處是提高了系統(tǒng)的運行效率,防止消息被阻塞。實現(xiàn)接口服務(wù)的類函數(shù)必須與接口服務(wù)函數(shù)名相同,參數(shù)一致,并且設(shè)置為公眾函數(shù)public供客戶端調(diào)用。同樣,若要實現(xiàn)分布式事務(wù),則應(yīng)將前面所述的并發(fā)控制模式應(yīng)為Single模式,即ConcurrencyMode=ConcurrencyMode.Single,并在要實現(xiàn)事務(wù)處理的函數(shù)加上[OperationBehavior(TransactionScopeRequired=true)]字樣的標(biāo)記,表示此函數(shù)在執(zhí)行時需要事務(wù)范圍。

        3.2 發(fā)布數(shù)據(jù)服務(wù)

        在VS 2010程序的“解決方案管理器”中選擇建立WCF服務(wù)程序,點右鍵選擇“屬性”選項,在打開的頁面中選擇“Web”,選中“使用本地IIS Web服務(wù)器”,點擊“創(chuàng)建虛擬目錄”,則在本地的IIS Web服務(wù)器創(chuàng)建了一個與項目名相同的網(wǎng)站。啟動本地Internet信息服務(wù)(IIS)管理器,在左側(cè)的網(wǎng)站列表中點擊這個網(wǎng)站,然后雙擊其“目錄瀏覽”圖標(biāo),在打開的頁面右側(cè)的“操作”欄點擊“啟動”,打開網(wǎng)站目錄瀏覽的功能,完成數(shù)據(jù)服務(wù)的發(fā)布。

        3.3 客戶端的服務(wù)引用

        在客戶端建立控制臺應(yīng)用程序或Windows窗體應(yīng)用程序,在界面右側(cè)的“解決方案資源管理器”中右鍵點擊“引用”目錄,選擇“添加服務(wù)引用”,在彈出的對話框“地址”欄中輸入服務(wù)的發(fā)布地址(可通過運行WCF服務(wù)端程序,點擊打開網(wǎng)頁后綴名為SVC的鏈接,則打開的網(wǎng)址即為服務(wù)地址,非本地引用時需要將其localhost字樣換為服務(wù)器所在的IP地址即可),點擊“前往”按鈕,則找到對應(yīng)的服務(wù),在“命名空間”欄輸入客戶端引用服務(wù)的名稱,點擊“確定”按鈕,則成功添加服務(wù)引用,如圖3所示。

        圖3 客戶端引用數(shù)據(jù)服務(wù)

        添加服務(wù)引用后,在客戶端就可以通過代理直接使用服務(wù)端發(fā)布的數(shù)據(jù)服務(wù),實現(xiàn)所需的數(shù)據(jù)發(fā)布與更新功能。

        4 結(jié)束語

        WCF技術(shù)本身具有很好的兼容性,可以在不改變鐵路設(shè)計各專業(yè)既有后臺數(shù)據(jù)的情況下,以專業(yè)間的數(shù)據(jù)交換標(biāo)準(zhǔn)為參照,通過服務(wù)接口的定義和發(fā)布,實現(xiàn)數(shù)據(jù)的分發(fā)與共享,完成專業(yè)間的協(xié)同設(shè)計。當(dāng)然,由于鐵路設(shè)計本身的復(fù)雜性和專業(yè)協(xié)同的要求,對數(shù)據(jù)服務(wù)權(quán)限、數(shù)據(jù)版本的控制以及在用戶并發(fā)量上升時如何保證服務(wù)的可靠性和有效性,這些都需要通過對系統(tǒng)的精心設(shè)計和嚴(yán)格測試,才能使建立的分布式數(shù)據(jù)服務(wù)達到應(yīng)用的要求。

        [1]布斯塔曼特(Micbele Leroux Bustamance)(著),龐引明、侯伯薇(譯).學(xué)習(xí)WCF從原理到實踐[M].北京:電子工業(yè)出版社,2008

        [2]吳清壽.基于WCF的分布式系統(tǒng)模型研究與實現(xiàn)[J].吉林師范大學(xué)學(xué)報(自然科學(xué)版),2012(3)

        [3]李雪東.基于WCF面向服務(wù)架構(gòu)的研究與應(yīng)用[D].長春:長春理工大學(xué),2009

        [4]汪享慶.鐵路勘測設(shè)計協(xié)同設(shè)計探討[J].交通與計算機,2008(1)

        [5]石紅兵,鄭云,曾學(xué)貴.勘測設(shè)計一體化軟件開發(fā)過程中數(shù)據(jù)庫的設(shè)計[J].鐵道工程學(xué)報,2000(2)

        [6]彭先寶.鐵路勘測設(shè)計一體化系統(tǒng)開發(fā)策略分析[J].鐵道勘察,2008(2)

        猜你喜歡
        服務(wù)端數(shù)據(jù)服務(wù)勘測
        地理空間大數(shù)據(jù)服務(wù)自然資源調(diào)查監(jiān)測的方向分析
        小型無人機在水利工程勘測中的應(yīng)用研究
        勘測設(shè)計
        云存儲中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
        新時期《移動Web服務(wù)端開發(fā)》課程教學(xué)改革的研究
        在Windows Server 2008上創(chuàng)建應(yīng)用
        水利勘測
        勘測設(shè)計
        如何運用稅收大數(shù)據(jù)服務(wù)供給側(cè)結(jié)構(gòu)性改革
        中國商論(2016年34期)2017-01-15 14:24:18
        基于頻繁子圖挖掘的數(shù)據(jù)服務(wù)Mashup推薦
        免费国产一区二区视频| 99久久久久国产| 一个人免费观看在线视频播放| 中文字幕你懂的一区二区| 国产亚洲成人精品久久| 亚洲欧美乱综合图片区小说区| 国产亚洲日韩一区二区三区| 欧美亚洲国产丝袜在线| 国产一区二区中文字幕在线观看 | 久久国产高潮流白浆免费观看| 精品久久人妻av中文字幕| 奇米影视7777久久精品| 久久久久久久性潮| 亚洲香蕉毛片久久网站老妇人| 一区二区三区极品少妇| 久久精品国产99久久无毒不卡| 亚洲国产精品嫩草影院久久 | 免费人成黄页网站在线观看国产| 日韩精品视频免费网站| 人妻少妇精品无码专区动漫| 久久精品免费一区二区喷潮| 在线亚洲免费精品视频| 亚洲国产精品久久久av| 国产精品成人国产乱| 日韩久久久黄色一级av| 日韩有码中文字幕在线视频| 无码小电影在线观看网站免费| 五月天精品视频在线观看| 国产在线一区二区视频免费观看| 亚洲国产丝袜久久久精品一区二区 | 人妻少妇艳情视频中文字幕| 国产乱对白刺激视频| 十八岁以下禁止观看黄下载链接| 中文字幕人成乱码中文乱码| 亚洲国产精品一区二区成人av| 国产成人一区二区三区影院动漫| 久久精品国产一区二区蜜芽| 看国产亚洲美女黄色一级片| 亚洲午夜久久久久久久久久| 色吧综合网| 日韩美女人妻一区二区三区|