臺風業務應用和預警系統簡介論文
無論是在學習還是在工作中,大家或多或少都會接觸過論文吧,論文是進行各個學術領域研究和描述學術研究成果的一種說理文章。你所見過的論文是什么樣的呢?下面是小編整理的臺風業務應用和預警系統簡介論文,希望能夠幫助到大家。
摘 要:在上海市防汛部門現有的多個信息系統的基礎上,基于 RESTful 架構,運用 JSON,WCF,ArcGISServer 10.1 等技術構建臺風路徑發布系統,為防汛指揮決策、氣象水情分析及社會公共服務提供多層次和全方位的信息服務,并整合相關信息資源并有效降低建設運維成本。目前該研究成果已在上海防汛信息系統中得到使用和推廣。
關鍵詞:臺風;RESTful ;WCF;ArcGIS10.1.
0 引言。
上海市水務局現有各單位的信息系統由于建設時間、設計理念和施工單位不同,技術路線、系統架構、數據庫結構等各不相同:存在 C/S 與 B/S 多種系統架構,Java,.Net 與其他工業組態軟件多種技術路線,SQL Server,Oracle,SyBase,DB2,Foxpro 多類數據庫等,數據多源異構、技術路線差異極大[1],許多通用功能尤其是獲取臺風數據和 GIS平臺部分都各自開發,造成無法重用,甚至是資源爭用,使得后續維護更新的工作量加大,更容易產生數據發布不統一的問題。
在上海市防汛部門積累的大量數據基礎上,主要對臺風路徑發布、數據分析及基礎底圖等進行整合研究,采用基于 RESTful 架構的面向服務的方式實現功能模塊的重用,以達到數據發布的統一及系統運維的簡化,為防汛指揮決策、氣象水情分析及社會公共服務提供多層次及全方位的信息服務和決策支持,并整合資源降低建設運維成本。
1 RESTful 架構。
REST 是 Representational State Transfer 的簡稱,是 Roy Fielding 博士于 2000 年提出來的一種軟件架構風格。REST 從資源的角度觀察整個網絡,分布在各處的資源由 URI(Uniform Resource Identifier)確定,而客戶端的應用通過 URI 獲取資源的表征,獲得這些表征致使這些應用程序轉變了狀態。隨著不斷獲取資源的表征,客戶端應用不斷地在轉變著狀態,所謂表征狀態轉移(Representational StateTransfer)。設計良好的網絡應用表現為一系列的網頁,這些網頁可以看作虛擬的狀態機,用戶選擇這些鏈接導致下一網頁傳輸到用戶端展現給使用的人,而這正代表了狀態的轉變[2].
RESTful Web 服務是一個使用 HTTP 并遵循REST 原則的 Web 服務,對比目前主流的 Web 服務實現方案,RESTful 的 Web 服務比復雜的 SOAP 和XML-RPC 簡潔。具體實現應該遵循 4 個基本設計原則:顯式地使用 HTTP 方法;無狀態;公開目錄結構式的 URI;傳輸 XML,JavaScript Object Notation(JSON),或同時傳輸這兩者。
J S O N 是一種輕量級的數據交換格式,采用完全獨立于語言的文本格式,但是也使用了類似于 C 語言家族的習慣,包括C, C++,C#, Java,JavaScript,Perl,Python 等, 這些特性使 JSON 成為理想的數據交換語言。JSON 建構于 2 種結構:1)“名稱/值”對的集合,在不同的語言中,它被理解為對象、紀錄、結構、字典、哈希表、有鍵列表或者關聯數組;2)值的有序列表,在大部分語言中,它被理解為數組。這些都是常見的數據結構。事實上大部分現代計算機語言都以某種形式支持它們。這使得一種數據格式在同樣基于這些結構的編程語言之間交換成為可能[3].相對于傳統的 XML 數據格式,JSON 由于省略了冗余標簽,使得編碼更為簡單清晰,極大地縮減了數據量。并且 JSON 數據格式作為 JavaScript 程序語言規范的一個子集,能為客戶端瀏覽器直接解析,極大地簡化了開發步驟,提高了系統運行效率。通過對比可以發現,總體來說JSON 能夠對 XML 數據進行進一步的壓縮,壓縮率由 XML 數據的內容而定,有一定的浮動。考慮到對于 XML 編碼的數據在客戶端需要進行進一步的解碼處理,而對于 JSON 編碼的數據則可以直接被客戶端識別為 JavaScript 對象,因此 JSON 在提高服務方面有較高的利用價值[4].
2 基于 WCF 技術的. RESTful 架構數據服務構建。
2.1 WCF 技術。
WCF 技術是由微軟發展的一組數據通信的應用程序開發接口,是 .Net 框架的一部分,由 .NetFramework 3.0 開始引入,為適應面向服務架構而設計的一套統一的程序開發模型。借助 WCF,可以將數據作為異步消息從一個服務終結點發送至另一個服務終結點。服務終結點可以是由 IIS 承載的持續可用的服務的一部分,也可以是應用程序中承載的服務[5]. 終結點可以是從服務終結點請求數據的服務客戶端。簡單消息可以是作為 XML 發送的單個字符或單詞,復雜消息可以是二進制數據流。WCF 的體系結構如圖 1 所示。WCF 的功能包括:1)面向服務的體系結構,使得在任何平臺上創建的任何客戶端均可連接到所有服務;2)WCF 實現了Web 服務互操作性的現代行業標準;3)多種消息模式如單工、雙工模式交換信息;4)發布服務元數據,可用于自動生成并配置客戶端,以便訪問 WCF 服務;5)數據協定的代碼友好方法;6)可對消息進行加密以保護隱私,而且可以要求用戶對其自身進行身份驗證,然后才允許接收消息;7)支持多種傳輸和編碼方式如超文本傳輸協議 (HTTP) 發送文本編碼的SOAP 消息;8)支持 REST 及 AJAX.
2.2 WCF 技術與 RESTful 架構。
WCF 技術很好地支持了 RESTful 架構服務的開發,首先通過數據契約(DataContract)標記創建一個類來定義服務返回的對象結構。然后通過服務契約(ServiceContract)標記創建一個表示服務契約的接口,其中通過 WebGetAttribute 屬性定義獲取數據的 GET 方法,UriTemplate 定義調用 RESTful 服務的調用方式 URI,并且可以通過占位符實現路徑中的動態部分與參數之間的映射,通過 WebMessageFormat 屬性(Xml/Json)定義消息傳遞的格式。最后通過在 svc 的標記中加上 Factory = “System. ServiceModel. Activation.WebServiceHostFactory” 屬性將該 RESTful 發布到寄宿程序中。
2.3 數據服務。
基于 WCF 技術開發并對外發布基于 RESTful架構的臺風路徑,以及全市氣象、水情、雨情、工情、災情等實時數據服務。
數據服務采用簡單、直觀、可預測且易于理解的 URI 命名,例如 http://域名或 IP/dataservice/jsonservice.svc/gettaifenglujing/{taifengname},開發人員無需解釋或者參考資料,一看便能了解此服務是用于獲得臺風路徑資源的。
數據服務提供了 JSON 數據格式,使得服務可由運行在不同平臺和設備上的采用不同語言編寫的各種各樣的客戶端所使用,最小化與使用服務的應用程序之間的數據耦合。臺風路徑服務提供的臺風路徑數據如表 1 所示。
除了臺風、水位等基礎信息的數據服務之外,數據服務還提供臺風相似路徑計算、雨量時段統計及最大小時雨量計算等服務。臺風相似路徑計算服務應用 Hausdorff 距離匹配法計算出路徑相似的臺風,并提供 Hausdorff 距離(DMHD)和路徑相似度(SAB)2 個量化指標。以 2012 年 11 號臺風“海葵”為例,系統自動查找出與其路徑相似的臺風,192208,194906,195411,0008 杰拉華,193309,195612,0216 森拉克,相似度依次為 89.8%,89.3%,88.2%,87%,85.9%,85.7%,85.7%.
基于 WCF 技術 RESTful 架構的數據服務在不改變原有數據結構的基礎上,優化了對多源異構數據的跨庫表訪問方式,簡化了數據共享與交換的難度,提高了數據庫的安全程度,實現了對原有系統的零改造;同時考慮了跨部門、行業數據共享的訪問權限控制,用戶須經過系統身份驗證、具有訪問權限才可獲得相應的數據資源。
3 基于 ArcGIS Server 10.1 平臺的 Restful架構地圖服務構建。
3.1 ArcGIS Server 10.1 平臺及部署。
本系統采用 ArcGIS Server 10.1 平臺軟件提供GIS 資源服務。ArcGIS Server 10.1 是基于 SOA 架構的 GIS 服務器,通過它可以以服務形式共享二三維地圖、地址定位器、空間數據庫和地理處理工具等 GIS 資源,并允許多種客戶端(如 Web 端、移動端、桌面端等)使用這些資源創建 GIS 應用[6].
ArcGIS Server 10.1 架構模型的邏輯關系簡單概括為以站點(Site)為架構單位,集群(Cluster)為GIS 服務的邏輯單位,GIS 服務器(Server)為實際處理單位。
ArcGIS Server 站點的用途是接收對服務的請求、執行請求,然后將結果發回到需要這些服務的客戶端應用程序。以下組件構成了 ArcGIS Server站點:
1)GIS 服務器。GIS 服務器用于執行對 Web 服務的請求,可繪制地圖、運行工具、查詢數據,以及執行能夠通過服務執行的任何其他操作。GIS 服務器可由 1 臺或多臺一起工作的計算機構成。這些計算機都具有訪問相同數據和配置信息的權限,因此,整個 ArcGIS Server 10.1 平臺是個具有彈性的、可伸縮的平臺。GIS 服務器通過 Web 協議 HTTP 公開服務。安裝 GIS 服務器后,即會獲得 1 組可以在應用程序中使用的 Web 服務。GIS 服務器可按組組織成集群。按照服務器管理員的配置,每個集群都運行 1 個專門的服務子集。例如,可以創建一個集群運行所有地圖服務,然后創建服務器的另一個集群運行地理處理服務。
2)Web 適配器。負責將 ArcGIS Server 站點與IIS,WebSphere,WebLogic 等 Web 服務器相集成,通過 Web 服務器地址及普通 URL 接收 GIS 服務請求,并將這些請求發送到站點上的各個 GIS 服務器計算機。
本系統在 VMWare 虛擬化平臺上分 3 個部分安裝部署 ArcGIS Server 10.1 平臺。底層為數據服務器,包含 1 臺部署了 MSSQLServer 和 ArcSDE 的地理數據庫服務器及 1 臺通過網絡共享文件夾提供雷達及衛星云圖數據的服務器,對核心層統一提供地理數據。核心層為在 6 臺服務器中安裝 ArcGISServer 作為 GIS 服務器,并將這 6 臺 GIS 服務器組織成 1 個 ArcGIS Server 站點統一管理,并根據業務需求創建 2 個計算集群(Cluster)分別處理已有緩存的瓦片和動態地圖服務;同時將 SDE 地理數據庫服務器及雷達、衛星云圖共享文件夾成功注冊。頂層洪敏慎等:基于 RESTful 架構的臺風路徑發布系統研究為在對外提供服務的 3 臺 Web 服務器的 IIS 中安裝部署 Web 適配器并注冊 ArcGIS Server 站點,對外統一提供基于 RESTful 架構的地理服務。
在本系統中,還結合使用 F5 應用負載均衡器對公開服務進行負載均衡設置。配置步驟如下:首先創建 GIS 應用池并設置虛擬 IP,然后設置該 GIS 應用池映射的 GIS 服務器 IP 地址,最后在映射的 GIS服務器中部署 F5 監測程序,同時應用 TCP 連接復用、內容緩存、TCP 緩沖、HTTP 壓縮、SSL 加速等設置;創建 Web 服務應用池,設置虛擬 IP.后臺由多臺虛擬 Web 服務器構成,同時應用了 TCP 連接復用、內容緩存、TCP 緩沖、HTTP 壓縮、SSL 加速等設置。
3.2 地圖服務的發布。
ArcGIS Server 從 9.3 版本就開始原生地支持RESTful 架構,通過 ArcGIS 的 REST 服務目錄可以看到當前所有的服務及這些服務支持的操作。
結合本系統的業務需求及空間數據的類型,創建和發布的地圖服務主要包括瓦片和動態地圖服務2 類。對于數據量巨大、更新不頻繁,以系統背景底圖為主要應用,不涉及屬性查詢的基礎地圖數據,預先制作瓦片緩存,并在相應的 ArcGIS Server 集群中創建靜態的緩存服務。創建地圖緩存時,配置不同的參數將影響地圖服務的顯示效果,這些參數包括起始點坐標、比例尺分級、切片格式(png,png24,jpg 等)、壓縮比、圖片高、圖片寬、DPI、緩存類型、區域范圍、比例尺和更新方式等。結合本系統的需要,為了使創建后的地圖服務能夠與其它信息系統實現數據熔享,本系統中提供了上海地方、Web Mercator 等坐標系統的地圖服務。基礎地形圖瓦片,參數設置為格式 png8,圖片大小為 256 px×256 px,96 DPI,采用緊縮方式;影像圖則采用 Jpg格式,壓縮質量為 85%.對于數據更新頻繁,有查詢統計、地圖定位需求的工程設施和監測監控數據等制作為動態地圖服務。
4 應用系統構建。
在基于 RESTful 的數據和地圖服務的支持下,利用 ArcGIS 提供的各種客戶端 API 及各種客戶端的編程接口開發了適用于各個平臺的臺風路徑圖系統。
4.1 網頁版臺風路徑圖系統。
采用 HTML+CSS+javascript 的傳統網頁技術開發臺風路徑圖系統,用戶只需要瀏覽器,即可訪問系統,無需另外安裝諸如flash等插件,使系統能獲得最大的兼容性。GIS 接口使用了最新的ArcGISAPIfor JavaScript,通過 ArcGISTiledMapServiceLayer 對象調用 ArcGIS Server 10.1 發布的瓦片地形圖、地圖及衛星遙感圖;通過 Graphic 對象動態繪制臺風實況路徑和 7 家機構的預報路徑,并按照 6 個等級(熱帶低壓、熱帶風暴、強熱帶風暴、臺風、強臺風、超強臺風),通過不同顏色和大小的符號直觀表達臺風發生、發展和消亡的變化過程。鼠標懸停在各節點可以查看臺風位置、中心氣壓、最大風速、移動速度、移動方向、風圈半徑等信息。同時由于該套API 構建在 Dojo 框架的基礎之上,因此該網頁版臺風路徑圖系統也使用了 Dojo 框架及 Dijit 小部件庫。通過 Dojo 中的 request.get 方法實現異步獲取 WCF發布的各種數據服務,使用 dGrid 表格控件展示臺風表格及雨量、水位等信息。此外為了豐富系統的顯示效果,還運用 ArcGIS JavaScript Viewer 框架,開發了地圖切換、衛星云圖等小部件。
4.2 安卓版臺風路徑圖系統。
基于當前較為流行的安卓系統,采用 ArcGISAPI for Android 技術開發了安卓版本的臺風路徑圖系統,將臺風的運行軌跡描繪在電子地圖上;對臺風的未來運行軌跡進行顯示;臺風運行的每個點通過觸摸設備屏幕可以調出該位置的時間、氣壓、風力、風速和風圈半徑等信息。安卓版臺風路徑圖系統。
5 結語。
研制的基于 RESTful 架構的臺風路徑發布系統,綜合應用 JSON,WCF,ArcGIS 等技術,實現了一種靈活可復用的信息系統架構,有效支撐了防汛保安工作。目前研究成果已在上海水務信息化中得到推廣應用,在快速構建水資源管理系統中發揮作用。2012 年“海葵”和 2013年“菲特”期間,研究成果分別經受了 17 萬次和 5萬次的訪問量,較好地證明了技術路線的可行性,強化了社會公共服務功能,而且降低了信息化建設和運維成本。研究成果中使用的架構風格、技術路線具有較強的可操作性,對推進資源整合、信息共享、集約化建設信息系統具有一定的借鑒意義。
參考文獻:
[1] 龔岳松,李靜芳,呂文斌,等。 上海水務數據中心建設規范的設計與研究[J]. 水利信息化,2012 (6): 54-60.
[2] Roy Thomas Fielding, Architectural Styles and the Designof Network-based Software Architectures[D]. UNIVERSITYOF CALIFORNIA, IRVINE, 2000: 41-57.
[3] Introducing JSON[EB/OL]. [2013-12-05]. http://www.json.org.
[4] 陳瑋,賈宗璞。 利用 JSON 降低 XML 數據冗余的研究[J].計算機應用與軟件,2012 (9): 188-190.
[5] 什么是 Windows Communication Foundation[EB/OL].[2013-12-05]. http://msdn.microsoft.com/zh-cn/library/ms731082 (v = vs.110)。 aspx.
[6] Derek Law. ArcGIS for Server 101[J]. ArcUser (Spring),2013:42.
【臺風業務應用和預警系統簡介論文】相關文章:
應用化學和材料化學的區別簡介07-19
數學與應用數學和統計學的區別簡介07-19
芻探財務預警系統01-20
邊坡工程的風險管理和應用論文04-09
寫論文,常用工具簡介 -論文01-01
舟山地區臺風降水Z-R關系研究及其應用11-03
寫論文,常用工具簡介05-09
語文分層閱讀教學的理論應用和價值探討論文06-15