999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SOA架構的遙感產品在線定制系統設計和實現

2014-08-01 01:48:02李若鷺張靜劉士彬段建波
遙感信息 2014年3期
關鍵詞:用戶產品功能

李若鷺,張靜,劉士彬,段建波

(中國科學院遙感與數字地球研究所,北京 100094)

1 引 言

經過近40多年的發展,遙感技術已經滲透到國民經濟的各個領域,對于推動經濟建設、社會進步、環境改善和國防建設起到重大作用。與此同時,得益于航空和航天技術的飛速發展,遙感數據的獲取技術正向三多(多傳感器、多平臺、多角度)和三高(高空間分辨率、高光譜分辨率、高時相分辨率)方向發展,遙感數據量正以每天TB級的速度在增長[1]。海量的遙感數據能夠在社會不同領域發揮不可替代的作用,然而,由于不同領域的需求多樣化,用戶需要應用的算法模型的多樣性,如何能從海量的遙感數據中快速的生產出滿足用戶需求的產品便成為一個關鍵問題。傳統的方法必須從海量的數據源中選擇所需要的數據,然后為了生產出滿意的產品則必須將多種的、復雜的遙感算法模型應用到這些數據中。這種方式雖然可行,卻復雜繁瑣。而工作流技術作為現代企業實現過程管理與過程控制的一項關鍵技術,能夠為遙感產品的生產定義一套統一的模型表達和實現,能夠快速地生產出所需的遙感產品[2]。Fearns Peter就曾提出過一個基于工作流技術的遙感數據處理系統,該系統使得非技術型的用戶可以方便地對海量的遙感數據進行訪問、處理和分析[3]。

目前雖然存在著有許多開源的工作流產品,如fireflow、Willow、workflow、JBPM等,而且也有許多基于BPM的可視化和處理流程的研究和實現[4],但如何設計和實現一個功能齊全的工作流系統依然存在著很大的挑戰。因為依照傳統的軟件的架構方法,系統往往會在構建過程中變得緊密耦合而且難于擴展和維護,遙感產品在線定制系統由于自身的復雜性也存在著同樣的問題,所以本文引入SOA來解決軟件架構不夠靈活的問題。

企業服務總線(Service Oriented Architecture,SOA)最早于1996年被Gartner公司提出,旨在以服務的方式來架構整個系統,它將系統看成由服務的調用和服務的實現所組成[5],為本文提出了一個架構系統的新思路。本文將針對這些問題進行探討和研究,結合SOA的思想,提出一個基于SOA架構體系的遙感產品在線定制系統。

2 技術介紹

2.1 工作流技術

工作流的概念起源于生產組織和辦公自動化領域,是針對日常工作中具有固定程序活動而提出的一個概念,它是一種計算機化的過程表示模型,定義了完成整個過程所需要的各種參數,這些參數包括對過程中每一個單獨步驟的定義、步驟間執行順序、條件以及數據流的建立、每一步驟由誰負責以及每個活動所需要的應用程序[2]。工作流是計算機支持的協同工作的一部分,它包含有兩個部分:工作流模型和工作流的實現[6]。工作模型即對工作流的抽象表示,由于工作流需要同時面對計算機環境和用戶,因此一個可以清晰表達工作流的模型是必不可少的,在現實的生產中,這些模型多為流程圖的形式。工作流的實現則是將抽象的、圖形化的工作流模型映射為實際的實現過程,即需要處理工作流各個步驟之間的通信以及確定系統各個組成部分之間的協作,最終完成工作流所定義的程序活動。

2.2 面向服務的架構

面向服務的架構(Service Oriented Architecture,SOA)最早由Gartner公司與1996年提出,Gartner將SOA定義為一個從接口定義開始的軟件架構,整個系統的結構由這些結構的拓撲結構和接口的實現以及接口的調用所實現[7-8]。它是一套結構系統的方法學,旨在降低系統內的偶合程度。在此定義之下,接口、接口的實現、接口的調用分別理解為服務的描述、服務的實現以及服務的調用,它將整個系統看成是由服務所組成的[9]。在SOA架構中,分布在網絡中的軟件資源都看成是服務,這些服務是從需求開始的,而非從技術開始。因此,SOA擺脫了面向技術的解決方案,朝著面向服務發展。同傳統架構相比,SOA更有彈性,能夠更快地響應業務需求,使得系統更加靈活。通過制定統一的服務接口,由服務的定義和服務的實現來構建整個系統將使得整個系統擁有更大的靈活程度及敏捷性,極大地增加系統的可擴展性和可維護性。

3 基于SOA架構的遙感產品在線定制系統設計

3.1 功能的設計

從用戶的角度出發,希望通過一個統一的網絡界面訪問遙感產品在線定制系統,同時,用戶可以通過簡單的繪制生產流程圖來描述所需要的產品,系統會對這個生產流程進行驗證、管理、執行,并及時向用戶反饋執行結果。因此,本文定義了一些基本的流程圖要素,這些要素可以組成復雜的產品生產流程,如表1所示。

表1 流程圖基本組成元素表

一個復雜的產品生產流程必須擁有一個開始節點以及一個或多個結束節點,而算法節點則表示是一個遙感算法模型。從精確定義上說,遙感算法模型是指運用數理統計等多種方法,以及計算機領域的知識,實現對遙感數據源進行處理、分析、解譯等目標的算法或者模型;而從廣義上說,遙感算法模型包含輸入、輸出和處理的遙感數據過程,它是一個黑箱,用戶向其輸入算法參數,而得到處理結果,用戶并不關心算法的實現細節。從某種意義上說,一個用戶自定義的完整流程也可以被看作是一個算法節點,它同樣是由輸入參數得到輸出結果的過程,因此,在本系統中流程是可以嵌套的。也就是說,一個定義良好的流程可以作為子流程在其他更加復雜的流程中充當算法節點。這個特點也使定制復雜的流程變得簡潔而且高效。

而流程執行路由、分支、結合則是連接其他各個元素的元素,它們標識了生產流程的執行過程以及各個元素之間的關系。流程執行路由連接各個其他元素,標識著流程執行的方向;分支節點則表示流程執行在通過該節點之后將會分為多個執行方向并行處理;結合節點則會將結合多個并行執行的流程方向,將其結合為一個方向。

用戶可以利用這些基本的流程圖要素來繪制各種復雜的流程圖,這個流程圖能夠描述用戶的生產需求,而且能被系統識別并且最終執行。

3.2 系統設計

為了設計出一個滿足以上需求的遙感產品定制系統,本文將遙感產品生產系統中的數據模型分成流程模型、流程實例模型、算法模型和參數模型。一個數據模型定義了一類數據的組織存儲方式以及相關的操作方法。流程模型即用戶自定義流程的相關信息和操作;流程實例模型是一個具體流程被提交生產之后的信息表達;流程是由多個不同的處理算法組成的,因此算法模型則是存儲算法信息的數據模型;而參數模型則描述了某一個具體的算法輸入、輸出的參數信息。

而為了使系統本身不會隨著擴展變得臃腫,本文將采用一種基于SOA的架構,將這些數據模型相關的功能封裝起來,形成一個基礎服務層,對外僅表現為服務的調用接口,對內則管理并且實現這些具體服務。通過建立此基礎服務層,把系統中重用性很高的功能都封裝為服務,而系統的其他部分則只需調用這些服務而不必考慮實現過程。因此,在此基礎服務層之上可以不斷擴展系統功能的同時保持系統的靈活性。

如圖1所示,系統共分為3層:Web表現層、流程生產驅動層和基礎服務層。

圖1 系統整體架構圖

3.2.1 Web表現層

Web表現層即整個遙感產品定制系統的UI界面,是用戶與系統進行交互的接口、整個系統的表現層模型。主要涉及到兩個主要的功能:業務邏輯模塊和在線流程制定模塊。

業務邏輯模塊負責為用戶提供統一的Web界面,使用戶可與遙感產品生產系統進行交互,該模塊提供了一些基本功能來滿足用戶對自身信息的管理和維護,如查看用戶自定義的流程信息、添加算法等。

流程定制模塊向用戶提供繪制流程圖的功能,采用Flex實現,用戶可以通過簡單的拖拽來自定義一個生產流程。該模塊同時會將圖形化的流程圖映射為流程數據模型并驗證流程圖的合法性。

3.2.2 流程生產驅動層

流程生產驅動層,其核心功能是執行用戶在客戶端定制的數據處理工作流程,該層由任務調度、解析流程信息、生產流程和反饋運行狀態4個部分組成。它需要通過基礎服務層獲得需要處理的流程信息,然后通過任務調度模塊來對這些待處理流程進行調度;在生產過程中,流程生產驅動層需要解析從基礎服務層獲取到的生產流程描述信息,將靜態的流程描述信息映射為一個可運行的流程實現;之后,按照這個流程的實現來生產流程,即調用合適的遙感數據算法,將這些算法應用到相應的遙感數據之上來進行生產,得到產品數據;在整個生產的過程中,還需通過調用基礎服務層的相關服務來實時反饋流程的執行狀態。該層主要解決如何運用工作流技術實現描述性的工作流流程信息到具體的工作流運行實現的映射。

3.2.3 基礎服務層

Web應用層主要是用JAX-WS(Java API for XML Web Services)開發的一系列Web Service,用于滿足其他之上的層所需的一些功能,是整個系統的基礎層,它實現了系統中重用度比較高的業務邏輯功能。Web服務層是整個系統架構中的服務提供者,它將系統中的資源封裝成為服務。同時,向下它通過持久訪問層與數據庫打交道,從而將系統的其他層與數據庫細節隔離開來。由于其他層中的數據庫訪問功能以及相關的流程信息的具體存儲實現功能封裝在此層中,因此其他層可以更加專注于本身業務邏輯的處理,而不必關注繁瑣的細節。作為一個SOA架構體系中的服務層,基礎服務層為其上層提供了基礎的功能,并且負責管理基礎服務,是整個系統的基礎結構層。為系統提供全面的服務以及管理的便利性,根據遙感產品定制系統的數據模型,將整個基礎服務層分為4個模塊:算法服務,算法參數服務,流程服務和流程實例服務。這4個模塊分別提供了與相應數據模型模型相關的功能:算法服務提供了注冊算法、查詢算法以及修改算法的功能;算法參數服務提供了對算法的輸入、輸出參數的類型進行定制的功能,即某些算法可能需要參數為特定格式的圖像,可以通過算法參數服務來注冊新的參數類型;流程服務則管理所有的用戶流程,包括流程的存儲,流程的查詢檢索以及流程的修改等功能;流程實例服務為管理正在運行的流程提供相應的功能,主要提供用來查詢和控制正在運行的流程實例的功能。

在這樣一個設計之中,基礎服務層將整個系統中涉及到底層數據存儲邏輯的功能作為服務提供給其他層次,是SOA架構體系中的服務提供者。而上層的Web表現層和流程生產驅動層則是服務使用者,它們不用關心如何實現某一特定功能,只需要調用基礎服務層的相關服務來完成這一功能即可。此設計可以使得服務的使用者不用關心其職責之外的事,而達到職責的單一化來實現整個系統的松耦合[10]。如Web表現層是用于顯示流程信息,并給用戶提供操作接口,它并不關心底層是如何存儲用戶流程信息的,這些底層的存儲功能都是由基礎服務層實現并且以Web Service的形式提供。

4 基于SOA架構的遙感產品在線定制系統實現

4.1 系統運行環境

本系統大部分由Java以及Java相關技術實現,可以在任何操作系統下實現,考慮到運行的可靠性,本文采用的操作系統是Ubuntu Linux。其中,Web表現層主要用Flex4以及SSH架構(Structs+Sping+Hibernate)實現;生產驅動子系統主要采用JBPM5.3實現;基礎服務層采用JAX-WS(Java API for XML Web Services)實現;后臺數據庫采用MYSQL;搭載整個系統運行的Web應用服務器是Tomcat。從用戶的角度看這是一個B/S架構的系統,只要擁有主流的瀏覽器即可訪問系統。如表2所示。

表2 基本軟硬件配置環境一覽

4.2 系統的功能展示

圖2 系統界面預覽

系統的Web界面(圖2),是用戶和系統之間的接口,它為用戶提供了遙感產品流程的在線定制、遙感算法的在線注冊與管理、產品流程的管理與查詢等功能,并能在線提交遙感產品流程,以驅動后臺核心工作流引擎進行實時生產。

圖3是用戶繪制的一個簡單的遙感產品生產流程,開始節點標示著流程執行的開始,結束節點標示著流程執行的結束,中間兩個節點是組成該流程的兩個算法:NDVI算法和可視化NDVI算法。

用戶在繪制完成流程圖之后,系統將會驗證流程圖的正確性,通過驗證的流程圖即可進入生產階段,在進行生產之前,用戶應該表明流程的輸入參數(在本例中即選擇預處理的遙感數據)。而且用戶可以上傳需要處理的影像作為輸入參數。

圖3 流程繪制一覽圖

用戶提交生產的流程將會被系統后臺調度執行,在流程的執行過程中,系統為用戶提供了一個監控界面,可以實時的監控流程的執行情況,如圖4所示,流程正執行到NDVI的處理。在流程執行結束后,生產結果將會向用戶反饋,目前本系統會像用戶發送一個URL地址,其中存儲了流程執行的最終結果。

圖4 流程執行過程監控

5 結束語

本文闡述了基于工作流技術和SOA技術解決批量生產遙感產品的一種方式,通過構建一個基于SOA的遙感產品在線定制系統,可以滿足不同行業需求快速的生產出所需的遙感產品。本文設計的基于SOA的遙感產品定制系統擁有極大的靈活和擴展性,整個系統處于一種松耦合和易于擴展的狀態;它為用戶提供了一個易于理解的流程描述模型,同時借助于JBPM工作流引擎能夠快速實現用戶定制的流程、生產出遙感產品。對有著不同需求的不同行業內的遙感數據批量化、自動化生產有一定借鑒意義。

參考文獻:

[1] 梅安新.遙感導論[M].高等教育出版社,2001.

[2] 羅海濱,范玉順,吳澄.工作流技術綜述[J].軟件學報.2000,11(7):899-907.

[3] PETERA F,MATTHEWB B,MARKA B,et al.Web-based processing of remote sensing data in a workflows environment[J].ISRSE2011:The GEOSS Era:Towards Operational Environmental Monitoring.Sydney Convention & Exhibition Centre,N.S.W,2011.

[4] 殷實.基于JBPM引擎的工作流技術研究與應用[D].華中科技大學,2011.

[5] 吳步丹,金芝,趙彬.面向服務的建模:一種全過程復用的方法[J].計算機學報,2008,31(8):1293-1308.

[6] 曾月,范玉順.工作流管理系統Web客戶端的設計與實現[J].計算機工程與應用,2002,38(2):130-133.

[7] 吳家菊,劉剛,席傳裕.基于Web服務的面向服務(SOA)架構研究[J].現代電子技術,2005,28(14):1-4,7.

[8] 趙紅毅,孟德恩.基于SOA的工作流系統集成研究與設計[J].現代電子技術,2012,35(22):29-32.

[9] SPROTT D,WILKES L.Understanding Service-Oriented Architecture[J/OL].http://msdn.microsoft.com/en-us/library/aa480021.aspx.

[10] 魏東,陳曉江,房鼎益.基于SOA體系結構的軟件開發方法研究[J].微電子學與計算機,2005,22(6):73-76.

猜你喜歡
用戶產品功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
2015產品LOOKBOOK直擊
Coco薇(2015年1期)2015-08-13 02:23:50
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
新產品
玩具(2009年10期)2009-11-04 02:33:14
主站蜘蛛池模板: 18禁黄无遮挡免费动漫网站| 永久在线播放| 五月婷婷丁香色| 精久久久久无码区中文字幕| 97se亚洲综合在线韩国专区福利| 国产成人综合在线观看| 欧美人与牲动交a欧美精品| 国产杨幂丝袜av在线播放| 亚洲熟女中文字幕男人总站| 中文字幕资源站| 毛片最新网址| 原味小视频在线www国产| 999国内精品久久免费视频| 国产91视频观看| 综合久久五月天| 亚洲午夜片| 999国内精品久久免费视频| 华人在线亚洲欧美精品| 国产主播在线观看| 91小视频在线| 福利一区三区| 亚洲第一黄片大全| 亚洲床戏一区| 国产人人射| 免费一级毛片在线观看| 亚洲欧洲一区二区三区| 久久久久久久久亚洲精品| 国产在线观看91精品亚瑟| 亚洲国产无码有码| 欧美激情伊人| 国内精品91| 午夜福利无码一区二区| 国产成人亚洲欧美激情| 中日无码在线观看| 亚洲精品另类| 中文字幕无码制服中字| 九九热精品免费视频| 国产乱子伦精品视频| 亚洲人成网站色7777| 日本道中文字幕久久一区| 欧美日韩午夜| 日韩欧美色综合| a级毛片毛片免费观看久潮| 在线观看免费人成视频色快速| 国产鲁鲁视频在线观看| 国产精品成| 欧美 国产 人人视频| 高清无码一本到东京热| 草逼视频国产| 色噜噜综合网| 日韩在线播放中文字幕| 全部无卡免费的毛片在线看| 91黄色在线观看| 亚洲精品中文字幕午夜| a毛片在线播放| 亚洲日本韩在线观看| 国产区91| 无码aaa视频| 极品尤物av美乳在线观看| 日韩国产黄色网站| 亚洲欧洲一区二区三区| 久热中文字幕在线观看| 国产欧美自拍视频| 久久一日本道色综合久久| 亚洲免费人成影院| 天天激情综合| 国产福利在线观看精品| 成人在线视频一区| 久久性视频| 欧美97欧美综合色伦图| 色综合五月| 久久精品欧美一区二区| 亚洲首页在线观看| 老司国产精品视频| 色综合天天综合中文网| 国产经典在线观看一区| 激情网址在线观看| 国产成人一区| 日韩欧美中文在线| 亚洲中字无码AV电影在线观看| 亚洲第一极品精品无码| 国产日韩丝袜一二三区|