李 丹,劉 惠,關(guān) 一
(國家海洋技術(shù)中心,天津 300112)
消息中間件在船載監(jiān)控系統(tǒng)中的應(yīng)用研究
李 丹,劉 惠,關(guān) 一
(國家海洋技術(shù)中心,天津 300112)
消息中間件技術(shù)是近幾年來比較熱門的技術(shù)。采用面向服務(wù)體系的架構(gòu)與消息中間件相結(jié)合的技術(shù),在船載監(jiān)控系統(tǒng)中設(shè)計(jì)一種標(biāo)準(zhǔn)的集成框架結(jié)構(gòu),使用異步消息傳送機(jī)制,保證消息可靠同步的同時(shí),降低分布式系統(tǒng)各部分之間的耦合度,提高船載監(jiān)控系統(tǒng)集成的可擴(kuò)展性及系統(tǒng)展示的多樣性。
消息中間件;面向服務(wù)體系的架構(gòu);監(jiān)控系統(tǒng);企業(yè)服務(wù)總線
近幾年來,海洋災(zāi)害頻發(fā),沿海污染造成的生態(tài)環(huán)境破壞越來越嚴(yán)重,使得我國越來越重視海洋監(jiān)測系統(tǒng)的建設(shè)?!熬盼濉逼陂g的海洋監(jiān)測高技術(shù)研究,已取得了一批成果,研制了一批海洋監(jiān)測關(guān)鍵儀器設(shè)備。在船舶這樣的特殊環(huán)境中,工作人員是有限的,所以需要船載監(jiān)控集成系統(tǒng)將各類設(shè)備集成到一起,更好地進(jìn)行監(jiān)測管理。在監(jiān)控設(shè)備多的情況下如何很好地將監(jiān)控信息展示出來是集成系統(tǒng)需要考慮的問題。而且對于不同的人員,他們的關(guān)注點(diǎn)也是不同的,所以需要根據(jù)他們關(guān)注的不同,顯示不同的信息 ,也就是說要有多種界面顯示形式,多種界面在顯示時(shí)信息必須同步。隨著信息化的不斷深入,現(xiàn)在的船舶配有船務(wù)管理系統(tǒng),視頻監(jiān)控系統(tǒng)等等各種應(yīng)用系統(tǒng),如何將各種孤立的系統(tǒng)有機(jī)地結(jié)合起來,并能夠方便地提供不同需求的應(yīng)用顯示界面,以實(shí)現(xiàn)工作效率的最大化,也是現(xiàn)在船載集成系統(tǒng)所要解決的技術(shù)難點(diǎn)。
本文在船載集成系統(tǒng)中引入基于SOA的架構(gòu)和服務(wù)總線的技術(shù)——意在設(shè)計(jì)一種標(biāo)準(zhǔn)框架,將船舶上的各類儀器設(shè)備和船務(wù)管理系統(tǒng)、視頻監(jiān)控系統(tǒng)等各類系統(tǒng)通過服務(wù)總線方式良好地集成于船載集成系統(tǒng)平臺,以便能夠提供多樣化的表現(xiàn)形式,大大提高船載系統(tǒng)的集成效率。
面向服務(wù)的體系結(jié)構(gòu) (Service-Oriented Architecture,SOA)是一種系統(tǒng)框架,最早是由Gartner公司在1996年為了實(shí)現(xiàn)每個(gè)IT系統(tǒng)各自的自由發(fā)展空間且又能隨需共享而提出的。Service-architecture.com將SOA定義為:“本質(zhì)上是服務(wù)的集合。服務(wù)間彼此通信,這種通信可能是簡單的數(shù)據(jù)傳送,也可能是兩個(gè)或更多的服務(wù)協(xié)調(diào)進(jìn)行某些活動。服務(wù)間需要某些方法進(jìn)行連接。所謂服務(wù)就是精確定義、封裝完善、獨(dú)立于其他服務(wù)所處環(huán)境和狀態(tài)的函數(shù)?!?/p>
企業(yè)服務(wù)總線(Enterprise Service Bus,ESB)的概念是從SOA發(fā)展而來的一種新型系統(tǒng)集成模式。企業(yè)服務(wù)總線本質(zhì)上是一種可以提供可靠的、有保證的消息服務(wù)的中間件技術(shù)。ESB中間件產(chǎn)品利用的是Web服務(wù)標(biāo)準(zhǔn)和消息中間件協(xié)議接口,例如:IBM的 WebSphere MQ,Tibco的Rendezvous和Sonic Software的SoniCMQ等。ESB產(chǎn)品的共有特性包括:連接異構(gòu)的信息系統(tǒng)、利用Web服務(wù)描述語言接口封裝消息中間件協(xié)議,以及在消息中間件傳輸層上傳送簡單對象應(yīng)用協(xié)議(SOAP)傳輸流的能力。
消息中間件(Message Oriented Middleware,MOM)利用高效可靠的消息傳遞機(jī)制進(jìn)行平臺無關(guān)的數(shù)據(jù)交流,并基于消息數(shù)據(jù)通信來實(shí)現(xiàn)分布式系統(tǒng)集成。
消息中間件適用于需要高可靠的數(shù)據(jù)傳送的分布式環(huán)境。采用消息中間件后,系統(tǒng)中不同對象之間可以通過傳遞消息來激活對方的事件,完成相應(yīng)的操作,它能夠在不同平臺之間進(jìn)行通信,常被用來屏蔽掉各種平臺及協(xié)議之間的特殊性,實(shí)現(xiàn)應(yīng)用程序之間的協(xié)同。因此,其優(yōu)點(diǎn)在于能夠在客戶和服務(wù)器之間提供同步和異步的連接,并且在任何時(shí)刻都可以將消息進(jìn)行傳送或者存儲轉(zhuǎn)發(fā),遠(yuǎn)遠(yuǎn)優(yōu)越于過程調(diào)用。
本文在船載集成系統(tǒng)設(shè)計(jì)中采用了服務(wù)總線技術(shù),采用異步消息傳送機(jī)制,通過總線路由發(fā)布服務(wù)組件、響應(yīng)服務(wù)請求、調(diào)用響應(yīng)服務(wù)等功能實(shí)現(xiàn),使船載集成系統(tǒng)具有很好的伸縮性。采用服務(wù)總線的架構(gòu)設(shè)計(jì)系統(tǒng)時(shí),將船載集成系統(tǒng)的基礎(chǔ)功能模塊所提供的功能封裝成服務(wù),發(fā)布到服務(wù)總線上,集成系統(tǒng)在需要某個(gè)服務(wù)時(shí),發(fā)送服務(wù)請求消息到服務(wù)總線,服務(wù)總線根據(jù)消息中的服務(wù)描述信息找到相應(yīng)服務(wù),并執(zhí)行服務(wù)處理,處理完成后將結(jié)果再發(fā)送到總線,集成系統(tǒng)在從總線上取出結(jié)果。
圖1AMTSB體系結(jié)構(gòu)圖
圖1為AMTSB中的主要功能模塊,實(shí)際上每個(gè)功能模塊又包含多個(gè)子模塊,下面將介紹主要功能模塊的設(shè)計(jì)。
總線服務(wù)器負(fù)責(zé)接收服務(wù)請求,返回服務(wù)響應(yīng);保證服務(wù)消息傳輸和服務(wù)適配,實(shí)現(xiàn)各類異構(gòu)應(yīng)用之間的互操作。總線上包含消息和消息處理函數(shù)的接口、消息處理的基類,還有發(fā)布訂閱、詢問應(yīng)答、延遲消息處理等方法。
分配器是均衡負(fù)載、提高系統(tǒng)工作效率的關(guān)鍵。起到了隊(duì)列管理器的作用。它包括兩個(gè)隊(duì)列,一個(gè)是消息隊(duì)列,用來存放消息;一個(gè)是處理隊(duì)列,用來存放處理消息函數(shù)的地址。
分配器的工作過程是當(dāng)有消息通過傳輸管理器的封裝后到達(dá)總線上,監(jiān)聽器監(jiān)聽到總線上收到消息后觸發(fā)分配器,分配器查找是否有可以工作的節(jié)點(diǎn),如果有再通過傳輸管理器進(jìn)行后續(xù)過程;如果沒有可用節(jié)點(diǎn)則等待一段時(shí)間后繼續(xù)查找。
在消息的傳輸過程中任何的操作都需要有一個(gè)線程去執(zhí)行操作。傳輸管理器可以設(shè)置用于工作的線程數(shù)量,在工作過程中可以改變線程數(shù)量。然而傳輸管理器最主要的功能是發(fā)送和接收消息。在傳輸管理器中消息的發(fā)送和接收是通過消息隊(duì)列實(shí)現(xiàn)的。本文使用微軟消息隊(duì)列 (Microsoft Message Queue,MSMQ)來實(shí)現(xiàn)隊(duì)列的創(chuàng)建與刪除,消息的發(fā)送與接收。之所以選用MSMQ,是因?yàn)樗俏④浌镜闹髁魍ㄓ嵓夹g(shù)之一。MSMQ采用異步傳輸模式,允許通信的雙方在離線的狀態(tài)下進(jìn)行通信,它提供了一整套易于使用的API,并且已經(jīng)集成到.NET框架中,Windows 2000及以上的操作系統(tǒng)都可以方便地使用它。在AMTSB的框架中,支持異步通信是非常重要的一點(diǎn),因?yàn)樵谙到y(tǒng)的運(yùn)行過程中,并不能保證通信的另一端處于可用的狀態(tài)。
消息的接收是從接收隊(duì)列中取出可用的第一條消息,消息成功取出后觸發(fā)消息接收事件,這是一個(gè)消息接收的完整過程。在這個(gè)過程中如果有任何意想不到的錯誤,傳輸管理器會根據(jù)設(shè)置好的最大重傳次數(shù)重復(fù)進(jìn)行上述操作,當(dāng)?shù)竭_(dá)最大重傳次數(shù)而還沒執(zhí)行完上述過程時(shí),將從接收隊(duì)列中取得的消息發(fā)送到失敗隊(duì)列中。
本文討論的發(fā)布訂閱管理器是基于消息類型的發(fā)布訂閱管理器,在這種模式下,當(dāng)發(fā)布訂閱管理器收到一個(gè)消息時(shí),不對消息的內(nèi)容進(jìn)行解析,只關(guān)注消息的對象類型,然后根據(jù)訂閱者訂閱的消息對象類型把對應(yīng)的消息發(fā)送到訂閱者那里。
發(fā)布訂閱管理器的實(shí)現(xiàn)需要一個(gè)記錄訂閱信息的記錄表,只有獲得訂閱信息表,發(fā)布訂閱管理器才知道某個(gè)消息類型的所有訂閱者。所以訂閱信息記錄表是最為重要的。由于本文采用的是消息隊(duì)列的形式,所以所有的訂閱消息都發(fā)送到一個(gè)專門用來存放訂閱信息的隊(duì)列中。通過SubMsgRegisterRecord類實(shí)現(xiàn)了訂閱消息存儲隊(duì)列的創(chuàng)建,并且實(shí)現(xiàn)了訂閱消息的入隊(duì)列和出隊(duì)列,提供功能接口給上層類。PubSubManage類通過API調(diào)用SubMsgRegisterRecord類的方法實(shí)現(xiàn)了獲取訂閱信息表,消息的訂閱和退訂。
日志管理是指AMTSB系統(tǒng)在運(yùn)行時(shí),它將具體傳送的消息數(shù)據(jù)信息,系統(tǒng)的運(yùn)行步驟和報(bào)警、錯誤等信息到記錄到日志中。
安全管理是現(xiàn)代網(wǎng)絡(luò)系統(tǒng)的不可缺少的組成部分,特別是消息中間件,安全管理更是其中重要的功能。AMTSB的安全管理包括用戶數(shù)據(jù)的加密/解密、用戶的身份認(rèn)證等。
AMTSB使用了 Spring.Net,使用控制反轉(zhuǎn)(IoC,Inversion of Control),把傳統(tǒng)上由程序代碼直接操控的對象的調(diào)用權(quán)交給容器,通過容器來實(shí)現(xiàn)對象組件的裝配和管理。AMTSB中使用依賴注入的方式來實(shí)現(xiàn)IoC。依賴注入意味著一個(gè)對象的依賴關(guān)系可以通過外部“注入”不需要為對象查找任何內(nèi)容——它只是簡單地為依賴關(guān)系聲明了私有字段,允許它們能夠被外部提供,提供的方式可以是構(gòu)造函數(shù)或者通過屬性的設(shè)置器(Setter)。
在發(fā)布/訂閱模式中,使用MSMQ把訂閱信息表存儲在一個(gè)消息隊(duì)列中。消息的發(fā)布者不需要知道誰在接受消息,他們之間只是共享抽象的服務(wù)定義而不是具體的端點(diǎn)信息,所以兩者之間是松耦合的,當(dāng)發(fā)布者發(fā)送消息時(shí),所有訂閱該消息的訂閱者都會收到消息,發(fā)生相應(yīng)的變化。
在詢問-應(yīng)答模式中,服務(wù)消費(fèi)者發(fā)出服務(wù)請求,服務(wù)提供者監(jiān)聽到服務(wù)請求后,查找是否有匹配的服務(wù),如果有則返回響應(yīng)消息。AMTSB中設(shè)計(jì)的詢問-應(yīng)答模式使用單向消息通道,即只傳遞服務(wù)請求或服務(wù)響應(yīng)消息。詢問-應(yīng)答模式的機(jī)制是通過隊(duì)列,按照先進(jìn)先出的原則實(shí)現(xiàn)的。
AMTSB中最主要的是采用了服務(wù)消息的異步代理調(diào)用機(jī)制,它的實(shí)現(xiàn)原理如下:服務(wù)的使用者有兩個(gè)線程,一個(gè)線程用來發(fā)送請求,另一個(gè)線程用來接收響應(yīng)。這樣做的好處是使用者不必阻塞線程以等待響應(yīng),而且可以同時(shí)執(zhí)行其他工作。因此,使用者對花多長時(shí)間執(zhí)行服務(wù)不太敏感。在ATMSB中使用消息隊(duì)列來發(fā)送請求和接收響應(yīng)。這一對消息隊(duì)列擔(dān)當(dāng)使用者用來調(diào)用服務(wù)的單個(gè)地址。其具體工作步驟如下:
(1)使用者發(fā)送服務(wù)請求到請求隊(duì)列。釋放發(fā)送請求的線程,使用者可以執(zhí)行其他工作。
(2)每個(gè)服務(wù)提供者都可以看到請求隊(duì)列中的使用者,分配器確定哪一個(gè)服務(wù)提供者能夠接收消息,并確保只有一個(gè)服務(wù)提供者接收消息。
(3)獲勝的服務(wù)提供者從請求隊(duì)列中接收消息。
(4)服務(wù)提供者執(zhí)行服務(wù)。
(5)服務(wù)提供者發(fā)送服務(wù)響應(yīng)到應(yīng)答隊(duì)列中。釋放服務(wù)提供者線程,服務(wù)提供者可以執(zhí)行其他的工作(例如等待另一個(gè)請求)。
(6)使用者的偵聽器線程接收包含服務(wù)響應(yīng)的消息。
AMTSB采用異步消息機(jī)制,一個(gè)應(yīng)用通過AMTSB向其他應(yīng)用發(fā)出一個(gè)請求,請求的應(yīng)用程序不必正在運(yùn)行或是可到達(dá)的,無論何時(shí),只要請求的應(yīng)用程序再次可達(dá),就會收到請求。在可恢復(fù)模式中,如果在文件傳輸?shù)倪^程中由于某種原因產(chǎn)生的網(wǎng)絡(luò)故障使傳輸中斷,那么故障排除后AMTSB可以根據(jù)可靠隊(duì)列中保存的信息對文件失敗點(diǎn)進(jìn)行重傳。對傳輸?shù)南⑹褂脙?yōu)先級管理,滿足不同需求的消息的各種傳輸要求。具有超時(shí)管理的功能,避免資源浪費(fèi)。
AMTSB使服務(wù)功能和數(shù)據(jù)表現(xiàn)相分離,這樣做有多個(gè)顯著的優(yōu)勢:
(1)各個(gè)服務(wù)功能之間耦合度低、可擴(kuò)展性強(qiáng)。當(dāng)有新的設(shè)備需要集成到系統(tǒng)時(shí),只要在AMTSB中增加一個(gè)服務(wù),就可以接入系統(tǒng),而不影響其他的功能。
(2)多樣性個(gè)性化展示。在表現(xiàn)層上可以有多種形式展現(xiàn),如:Web形式,F(xiàn)orm形式,或是把同一個(gè)信息以不同的形式展現(xiàn)等等。
(3)界面可定制性,開發(fā)人員可根據(jù)用戶需求開發(fā)具有個(gè)性的界面。
(4)具有通用性,可以很簡單的移植到其他船只上。減少因?yàn)橹貜?fù)開發(fā)系統(tǒng)帶來的時(shí)間和金錢的浪費(fèi),同時(shí)也提高了工作效率。
(5)用戶功能需求管理模式。實(shí)現(xiàn)為不同的用戶提供其關(guān)注的功能服務(wù)。例如:船員登錄該系統(tǒng)時(shí)就可以查看航行的一些信息而科考人員可以查看儀器設(shè)備狀態(tài)。
(6)充分利用船載網(wǎng)絡(luò)資源實(shí)現(xiàn)分布式數(shù)據(jù)采集與處理功能。
(7)有利于促進(jìn)儀器設(shè)備數(shù)據(jù)采集接口規(guī)范的形成,實(shí)現(xiàn)即插即用能力。
總之,采用異步消息傳輸服務(wù)總線的架構(gòu)開發(fā)的船載集成系統(tǒng)降低了各組件之間的耦合度,提高了復(fù)用率,更主要的是能夠有多種不同的表現(xiàn)形式。
本文實(shí)現(xiàn)了在“向陽紅08”上的船載海洋生態(tài)環(huán)境現(xiàn)場數(shù)據(jù)采集監(jiān)測系統(tǒng)中應(yīng)用服務(wù)總線的體系架構(gòu),通過異步消息服務(wù)總線(AMTSB)將表現(xiàn)層與業(yè)務(wù)層無縫集成,實(shí)現(xiàn)一個(gè)應(yīng)用服務(wù)系統(tǒng)多種表現(xiàn)形式。例如:對于總協(xié)調(diào)人看到的是所有設(shè)備的監(jiān)控界面;對于各科研設(shè)備的操作員看到的是針對某臺設(shè)備的專項(xiàng)監(jiān)控;而對于船長他們只是關(guān)心船舶航行的GPS、電羅經(jīng)等等設(shè)備的數(shù)據(jù);對一般人員只是通過WEB的方式登錄到系統(tǒng)瀏覽信息、下載數(shù)據(jù)。因此面對不同的使用用戶,系統(tǒng)通過AMTSB架構(gòu)方式,將已封裝的不同的服務(wù),展示給不同的用戶,大大提高了船載監(jiān)控系統(tǒng)集成的可擴(kuò)展性及系統(tǒng)展示的多樣性。如圖2所示。
圖2 船載集成系統(tǒng)體系架構(gòu)
在系統(tǒng)平臺上,本系統(tǒng)采用Windows server 2003作為底層操作系統(tǒng),SQL Server 2005數(shù)據(jù)庫作為信息存儲數(shù)據(jù)庫,系統(tǒng)編程環(huán)境采用Microsoft Visual Studio 2005。
船載監(jiān)控系統(tǒng)的主要功能是根據(jù)航次任務(wù)的總體目標(biāo),編制待測站位信息,對任務(wù)和站位進(jìn)行管理;監(jiān)視GPS、電羅經(jīng)、船用氣象儀、姿態(tài)儀、航程計(jì)等通用儀器設(shè)備的運(yùn)行狀態(tài);當(dāng)船舶到達(dá)待測站位后,向各類科研儀器發(fā)出工作指令,監(jiān)視各類科研設(shè)備的運(yùn)行狀態(tài)并將測量數(shù)據(jù)錄入數(shù)據(jù)庫;提供測量數(shù)據(jù)的查詢下載和設(shè)備告警信息的查詢下載功能,以此實(shí)現(xiàn)資源共享。
船載集成系統(tǒng)整體架構(gòu)如圖3所示,在傳統(tǒng)的三層架構(gòu)中增加了消息總線層。
異步消息服務(wù)總線(AMTSB)是整個(gè)系統(tǒng)架構(gòu)中最為重要的部分,它降低了業(yè)務(wù)處理層與數(shù)據(jù)展示層的耦合度,使表現(xiàn)形式靈活多樣。AMTSB也可以起到負(fù)載均衡的作用。表現(xiàn)層的頻繁數(shù)據(jù)交互不是直接與應(yīng)用服務(wù)器進(jìn)行,而是通過AMTSB在應(yīng)用服務(wù)器空閑時(shí)對其進(jìn)行訪問,表現(xiàn)層再通過AMTSB獲得數(shù)據(jù),避免因大批量并發(fā)操作導(dǎo)致的系統(tǒng)崩潰,從而保證應(yīng)用服務(wù)器正常工作。
圖3 船載集成系統(tǒng)系統(tǒng)架構(gòu)圖
圖4 配置設(shè)備流程
下面以某個(gè)串口打開操作為例說明異步消息總線在船載集成系統(tǒng)中的對消息的處理流程。如圖4所示,用戶在Web配置界面中,點(diǎn)擊打開分析儀串口,這時(shí)相關(guān)信息被封裝成請求消息(Request)發(fā)送到AMTSB,AMTSB經(jīng)過解析找到處理該消息的應(yīng)用服務(wù)器,應(yīng)用服務(wù)器首先查找設(shè)備配置緩存,如果該設(shè)備串口沒有被打開,則調(diào)用串口驅(qū)動層接口,并將當(dāng)前串口操作的結(jié)果信息同步配置應(yīng)用服務(wù)器緩存。Web配置界面再從AMTSB獲得串口打開結(jié)果消息(Response)。在集成系統(tǒng)的其他監(jiān)控模式中,定時(shí)向AMTSB發(fā)送讀取設(shè)備狀態(tài)請求消息 (Request),AMTSB查詢設(shè)備狀態(tài)緩存獲取設(shè)備狀態(tài)信息,監(jiān)控界面再從AMTSB中取出設(shè)備狀態(tài)信息(Response),同步更新顯示。通過以上消息流向的展示、消息處理流程說明,證實(shí)AMTSB架構(gòu)體系引入船載監(jiān)控平臺可以真正實(shí)現(xiàn)業(yè)務(wù)處理層與數(shù)據(jù)展示層的隔離,便于實(shí)現(xiàn)多種監(jiān)控界面表現(xiàn)形式,易于設(shè)備擴(kuò)展與業(yè)務(wù)需求的擴(kuò)充,利于研發(fā)團(tuán)隊(duì)同步開發(fā)。
異步消息服務(wù)總線很好地把監(jiān)控系統(tǒng)中的各類系統(tǒng)和科研設(shè)備連接起來,對采集到的數(shù)據(jù)做統(tǒng)一的分析處理,有效地降低了系統(tǒng)在各部分之間的耦合度,使系統(tǒng)具有良好的靈活性、開放性,能夠有效地減少系統(tǒng)異構(gòu)和需求變化帶來的影響。為船載監(jiān)控系統(tǒng)集成的可擴(kuò)展性及系統(tǒng)展示的多樣性提供了堅(jiān)實(shí)的技術(shù)手段。
[1]龍麗萍.ESB_SOA架構(gòu)在企業(yè)應(yīng)用集成中的研究和應(yīng)用[D].長沙:中南大學(xué),2009.
[2]杜萬雅.基于ESB的SOA框架的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2008.
[3]James Snell使用企業(yè)服務(wù)總線簡化集成體系結(jié)構(gòu)[OL].2005[2005-11-01].http://www.ibm.com/developerworks/cn/webservices/ws-esbia/.
[4]周澤華,黃濤,李京.消息中間件管理器的設(shè)計(jì)和實(shí)現(xiàn)[J].計(jì)算機(jī)研究與發(fā)展,2002,39(3):318-323.
[5]Bunge R.An Operational Framework for Service Oriented Architecture Network Security[J].Hawaii International Conference on System Sciences,2008(1):312.
Application of Message Oriented Middleware in Ship Monitoring System
LI Dan,LIU Hui,GUAN Yi
(National Ocean Technology Center,Tianjin 300112,China)
In recent years,message oriented middleware (MOM)becomes more and more popular.The service oriented architecture(SOA)combined with MOM architecture is applied in ship monitoring system to design a standard integrated architecture.The asynchronous message is used to assure the reliability and reduce the coupling between components of the distributed system.At the same time,ship monitoring system could improve its integrated expansibility and diversity of display.
message oriented middleware;Service-Oriented Architecture;monitoring system;Enterprise Service Bus
P71,TP311
B
1003-2029(2011)02-0113-05
2011-04-15
國家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)資助項(xiàng)目(2007AA092101)