《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于SOA組件化的農(nóng)村信息平臺(tái)框架設(shè)計(jì)研究
基于SOA組件化的農(nóng)村信息平臺(tái)框架設(shè)計(jì)研究
胡淑新,李長云,周玲芳,李旭,張清清
(湖南工業(yè)大學(xué) 計(jì)算機(jī)與通信學(xué)院,湖南 株洲 412007)
摘要: 面向服務(wù)架構(gòu)(SOA)是一種面向企業(yè)級(jí)服務(wù)的系統(tǒng)框架,它具有其他企業(yè)級(jí)架構(gòu)所不具有的業(yè)務(wù)靈活性,把SOA松耦合、關(guān)注點(diǎn)分離、功能抽象的優(yōu)點(diǎn)結(jié)合到企業(yè)組件業(yè)務(wù)架構(gòu)方法中,從概念模型、層次結(jié)構(gòu)、實(shí)現(xiàn)方式等方面對(duì)基于SOA的組件化平臺(tái)框架進(jìn)行設(shè)計(jì),構(gòu)建企業(yè)服務(wù)總線,并將此框架應(yīng)用于云龍社區(qū)云田鎮(zhèn)兩型農(nóng)村社區(qū)信息化平臺(tái)建設(shè)中,驗(yàn)證了該框架在構(gòu)建兩型農(nóng)村信息化平臺(tái)框架時(shí)的有效性以及可行性。
Abstract:
Key words :

  摘要面向服務(wù)架構(gòu)(SOA)是一種面向企業(yè)級(jí)服務(wù)的系統(tǒng)框架,它具有其他企業(yè)級(jí)架構(gòu)所不具有的業(yè)務(wù)靈活性,把SOA松耦合、關(guān)注點(diǎn)分離、功能抽象的優(yōu)點(diǎn)結(jié)合到企業(yè)組件業(yè)務(wù)架構(gòu)方法中,從概念模型、層次結(jié)構(gòu)、實(shí)現(xiàn)方式等方面對(duì)基于SOA的組件化平臺(tái)框架進(jìn)行設(shè)計(jì),構(gòu)建企業(yè)服務(wù)總線,并將此框架應(yīng)用于云龍社區(qū)云田鎮(zhèn)兩型農(nóng)村社區(qū)信息化平臺(tái)建設(shè)中,驗(yàn)證了該框架在構(gòu)建兩型農(nóng)村信息化平臺(tái)框架時(shí)的有效性以及可行性。

  關(guān)鍵詞:面向服務(wù)架構(gòu);組件技術(shù);農(nóng)村信息化;平臺(tái)架構(gòu)

0引言

  信息技術(shù)的發(fā)展日益加快,互聯(lián)網(wǎng)高新技術(shù)在我國農(nóng)村社區(qū)信息化的普及應(yīng)用也越來越廣泛,以推進(jìn)“兩型”農(nóng)村社區(qū)信息化建設(shè)為目的,打造一體化信息化農(nóng)村社區(qū),全面提升農(nóng)民信息化應(yīng)用水平。在軟件復(fù)雜度越來越高的今天,需要針對(duì)農(nóng)村社區(qū)現(xiàn)狀,設(shè)計(jì)出一種適用于農(nóng)村社區(qū)信息化服務(wù)平臺(tái)構(gòu)建的信息化框架,來解決傳統(tǒng)的分布式系統(tǒng)之間難以良好協(xié)作的問題。

  本文提出了一種基于SOA組件化技術(shù)的農(nóng)村信息平臺(tái)框架,采用SOA面向服務(wù)架構(gòu),將實(shí)現(xiàn)項(xiàng)目相關(guān)的各類數(shù)據(jù)及應(yīng)用之間靈活調(diào)用,以組件復(fù)用實(shí)現(xiàn)組件及應(yīng)用的快速開發(fā),與應(yīng)用服務(wù)總線相結(jié)合,構(gòu)建靈活、可擴(kuò)展的支撐組件,實(shí)現(xiàn)了快速應(yīng)用開發(fā)及系統(tǒng)集成的應(yīng)用框架設(shè)計(jì)[1]。首先介紹了面向服務(wù)體系結(jié)構(gòu)及組件技術(shù),然后詳細(xì)闡述了本文所提出的信息化框架結(jié)構(gòu)。

1面向服務(wù)架構(gòu)與組件技術(shù)概述

  面向服務(wù)架構(gòu)(SOA)是一種應(yīng)用框架,它將應(yīng)用業(yè)務(wù)劃分為單獨(dú)的業(yè)務(wù)功能和流程,即所謂的服務(wù)[2]。SOA使用戶可以構(gòu)建、部署和整合這些服務(wù),以提高業(yè)務(wù)流程的靈活性,它可以有助于實(shí)現(xiàn)更快的開發(fā)與部署,快速響應(yīng)客戶需求。

  SOA本身就是一種面向企業(yè)級(jí)服務(wù)的系統(tǒng)架構(gòu),在基于SOA架構(gòu)的系統(tǒng)中,具體應(yīng)用程序的功能是由一些松耦合并且具有統(tǒng)一結(jié)構(gòu)定義方式的組件(service)組合構(gòu)建起來的,它具有其他企業(yè)級(jí)架構(gòu)所不具有的對(duì)于業(yè)務(wù)變更的快速和有效響應(yīng)[3]。SOA既不是一種語言,也不是一種具體的技術(shù),它是一種新的軟件系統(tǒng)架構(gòu)模型[4]。SOA架構(gòu)具有一些典型特性,主要包括松耦合性、位置透明性以及協(xié)議無關(guān)性。松耦合性要求SOA架構(gòu)中的不同服務(wù)之間應(yīng)該保持一種松耦合的關(guān)系,也就是應(yīng)該保持一種相對(duì)獨(dú)立的關(guān)系;位置透明性要求SOA系統(tǒng)中的所有服務(wù)對(duì)于它們的調(diào)用者來說都是位置透明的,也就是說每個(gè)服務(wù)的調(diào)用者只需要知道他們調(diào)用的是哪一個(gè)服務(wù),但并不需要知道所調(diào)用服務(wù)的物理位置在哪里;而協(xié)議無關(guān)性要求每一個(gè)服務(wù)都可以通過不同的協(xié)議來調(diào)用[5]。

  組件模型是系統(tǒng)架構(gòu)的一種形式,廣義上說,組件就是實(shí)現(xiàn)一類業(yè)務(wù)功能的可重用、可獨(dú)立部署和設(shè)計(jì)的程序集合,這些程序有明確和完善的接口定義,通過接口完成功能請(qǐng)求,而具體實(shí)現(xiàn)則通過封裝機(jī)制加以屏蔽[6]。

  采用組件模型可以通過將業(yè)務(wù)功能封裝在不同的組件中,實(shí)現(xiàn)功能分解,降低系統(tǒng)的耦合程度,保證系統(tǒng)中各個(gè)組件能夠獨(dú)立進(jìn)行修改和擴(kuò)展[7]。在系統(tǒng)設(shè)計(jì)過程中,通過分析業(yè)務(wù)功能需要和系統(tǒng)需求,分類業(yè)務(wù)處理流程,把系統(tǒng)劃分為若干通用組件[8]。

  圖2框架中數(shù)據(jù)傳輸與交換體系架構(gòu)2基于SOA組件化的農(nóng)村信息平臺(tái)框架研究

  21基于SOA組件化的農(nóng)村信息平臺(tái)框架結(jié)構(gòu)

  基于SOA組件化的農(nóng)村信息平臺(tái)模型架構(gòu)如圖1所示,SOA結(jié)構(gòu)模型將平臺(tái)接口調(diào)用開發(fā)和業(yè)務(wù)組件封裝以及服務(wù)封裝集成為一個(gè)開發(fā)層,通過企業(yè)服務(wù)總結(jié)(ESB)的建立減少對(duì)象間直聯(lián)的接口數(shù)量,提升系統(tǒng)的可維護(hù)性和擴(kuò)展性。

001.jpg

  該平臺(tái)主要包含5個(gè)層次:

  (1)基礎(chǔ)應(yīng)用系統(tǒng)層:是設(shè)計(jì)平臺(tái)框架時(shí)所需的應(yīng)用環(huán)境以及底層的消息通信服務(wù)。

 ?。?)企業(yè)服務(wù)總線ESB:是框架的基礎(chǔ)部分,運(yùn)行在應(yīng)用服務(wù)器之上,完成各類應(yīng)用服務(wù)和數(shù)據(jù)服務(wù)的整合和集成。

 ?。?)應(yīng)用組件層:用于支持軟件快速開發(fā),由公共服務(wù)組件、通用業(yè)務(wù)組件組成。公共服務(wù)組件是一系列用于用戶提高開發(fā)速度和降低開發(fā)難度的組件,包括流程管理、界面管理、數(shù)據(jù)報(bào)表等內(nèi)容,可擴(kuò)展。通用業(yè)務(wù)組件是結(jié)合實(shí)際業(yè)務(wù)需求開發(fā)出的一系列通用的組件,如拓?fù)浞治?、行業(yè)開發(fā)包等組件。

 ?。?)開發(fā)層:是組件封裝、應(yīng)用軟件開發(fā)、集成開發(fā)及軟件監(jiān)管的集成環(huán)境,由應(yīng)用開發(fā)工具及監(jiān)管工具組成。

 ?。?)交互層:是框架中對(duì)外服務(wù)的統(tǒng)一入口,包括應(yīng)用服務(wù)以及數(shù)據(jù)服務(wù),實(shí)現(xiàn)各類應(yīng)用系統(tǒng)登錄的統(tǒng)一認(rèn)證和個(gè)性化服務(wù)等內(nèi)容。

  22框架中的數(shù)據(jù)傳輸與交換體系架構(gòu)


002.jpg

  如圖2所示,該架構(gòu)主要由管理層、傳輸層、交換層、應(yīng)用層等四個(gè)層次構(gòu)成。

 ?。?)管理層:對(duì)交換中心、交換總線、交換節(jié)點(diǎn)的管理和監(jiān)控。

 ?。?)傳輸層:實(shí)現(xiàn)交換中心與交換中心之間、交換中心與交換節(jié)點(diǎn)之間、交換節(jié)點(diǎn)與交換節(jié)點(diǎn)之間的數(shù)據(jù)傳輸。

  (3)交換層:實(shí)現(xiàn)各應(yīng)用系統(tǒng)的接入和不同數(shù)據(jù)格式的轉(zhuǎn)換。

 ?。?)數(shù)據(jù)層:涵蓋各個(gè)應(yīng)用系統(tǒng)。

  23框架中快速開發(fā)組件調(diào)用流程

003.jpg

  快速開發(fā)組件調(diào)用流程如圖3所示,即對(duì)公共服務(wù)組件和業(yè)務(wù)組件的調(diào)用。

 ?。?)組件調(diào)用

  根據(jù)應(yīng)用需求調(diào)用不同的組件,包括公共服務(wù)組件和通用業(yè)務(wù)組件。一般過程是:調(diào)用界面組件,設(shè)計(jì)相關(guān)表單,同時(shí)在集成環(huán)境完成表單數(shù)據(jù)集成;在界面管理組件中,將印章表單關(guān)聯(lián),便于表單在流轉(zhuǎn)過程中能進(jìn)行電子簽章;調(diào)用流程管理組件,設(shè)計(jì)流程,包括流程流向、節(jié)點(diǎn)、節(jié)點(diǎn)動(dòng)作、表單綁定;在集成環(huán)境內(nèi)進(jìn)行流程外部表單集成調(diào)用開發(fā),如調(diào)用外部以WebService方式提供的表單。

  (2)集成開發(fā)

  集成開發(fā)是在組件調(diào)用過程中對(duì)外部數(shù)據(jù)、應(yīng)用集成的調(diào)用。如WebService、API等標(biāo)準(zhǔn)接口,實(shí)現(xiàn)服務(wù)整合。

  (3)應(yīng)用發(fā)布部署

  將開發(fā)的應(yīng)用封裝為服務(wù),注冊(cè)到公共信息服務(wù)門戶。通過授權(quán)設(shè)置,方便用戶通過門戶統(tǒng)一登錄后在自己的權(quán)限內(nèi)使用。

  24框架靈活性分析

  該框架采用SOA、總線技術(shù)建立靈活且易擴(kuò)展的系統(tǒng)框架,靈活應(yīng)對(duì)應(yīng)用需求,同時(shí)采用組件技術(shù),包括公共服務(wù)組件、通用業(yè)務(wù)組件,開放的模塊化設(shè)計(jì)提升了系統(tǒng)的復(fù)用性,可以使得平臺(tái)開發(fā)者更加快速地進(jìn)行系統(tǒng)開發(fā)??蚣鼙旧聿捎闷髽I(yè)服務(wù)總線(ESB)結(jié)構(gòu)可以很好地屏蔽各個(gè)應(yīng)用系統(tǒng)之間由于開發(fā)環(huán)境和開發(fā)語言不同所帶來的兼容性問題,并且服務(wù)提供者和服務(wù)請(qǐng)求者也不必跟其他提供者和請(qǐng)求者建立連接。對(duì)于開發(fā)人員而言,SOA提供的松耦合使得在業(yè)務(wù)需求不斷變更的同時(shí)不必大幅度修改維護(hù)系統(tǒng),從而降低了開發(fā)成本以及周期。圖3快速開發(fā)組件調(diào)用流程3初步應(yīng)用實(shí)踐

  將本文提出的基于SOA組件化的農(nóng)村信息平臺(tái)框架應(yīng)用于株洲云龍示范區(qū)云田鎮(zhèn)兩型農(nóng)村社區(qū)信息化管理平臺(tái)的設(shè)計(jì)構(gòu)建中,如圖4所示。云龍社區(qū)云田鎮(zhèn)農(nóng)村社區(qū)信息化管理平臺(tái)框架結(jié)構(gòu)分為5個(gè)層,其中開發(fā)層可細(xì)化為三個(gè)步驟,如圖5所示。將底層的應(yīng)用以組件的形式封裝起來,通過統(tǒng)一的接口提供上層服務(wù),上層是服務(wù)封裝層,通過使用這些組件,將其進(jìn)一步封裝成服務(wù),通過WSDL描述的服務(wù)按照一定的順序組合起來形成不同的業(yè)務(wù)流程,同時(shí)服務(wù)提供者可以直接根據(jù)需求動(dòng)態(tài)地改變相應(yīng)的業(yè)務(wù)流程,通過提供的內(nèi)部接口來實(shí)現(xiàn)。

004.jpg

  本文通過對(duì)面向服務(wù)架構(gòu)的研究提出了基于SOA組件化的農(nóng)村信息平臺(tái)框架模型,以及框架中所需數(shù)據(jù)傳輸交換體系架構(gòu)和快速開發(fā)組件調(diào)用流程架構(gòu)的設(shè)計(jì),很好地實(shí)現(xiàn)了框架中各個(gè)部分的資源整合。作為試驗(yàn)性應(yīng)用,將該框架應(yīng)用于云龍社區(qū)云田鎮(zhèn)兩型農(nóng)村社區(qū)信息平臺(tái)框架設(shè)計(jì)構(gòu)建中,可以有效地屏蔽各個(gè)部分技術(shù)不匹配等諸多問題,提高了系統(tǒng)的重用性,企業(yè)服務(wù)總線將應(yīng)用組件構(gòu)建封裝成不同粒度的服務(wù),并對(duì)服務(wù)進(jìn)行注冊(cè)和修改,實(shí)現(xiàn)了企業(yè)對(duì)服務(wù)的及時(shí)變更,SOA組件化架構(gòu)的松耦合特性可以有效降低服務(wù)之間的依賴性,降低了開發(fā)的復(fù)雜度以及維護(hù)的成本,有效促進(jìn)了兩型農(nóng)村社區(qū)信息化的發(fā)展。

參考文獻(xiàn)

[1] 馮玖,白尚旺,黨偉超. 基于SOA的物流信息系統(tǒng)架構(gòu)研究[J]. 計(jì)算機(jī)與數(shù)字工程,2009,37(1):192-195.

[2] 俞曉鋒. 基于SOA的企業(yè)信息系統(tǒng)集成架構(gòu)研究[D].長春:吉林大學(xué),2014.

[3] 楊帆. 基于SOA數(shù)據(jù)交換方法與技術(shù)的研究[D].西安:西安電子科技大學(xué),2014.

[4] 郭會(huì)杰. 基于SOA的企業(yè)門戶集成系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:中國科學(xué)院大學(xué),2014.

[5] MACLENNAN E, BELLE J P. Factors affecting the organizational adoption of serviceoriented architecture(SOA)[J]. Information Systems and eBusiness Management, 2014, 12(1):71-100.

[6] 張昀. 基于SOA架構(gòu)的分布式ESB總線的研究與實(shí)現(xiàn)[D].南京:南京理工大學(xué),2009.

[7] 劉濤,侯秀萍. 基于ESB的SOA架構(gòu)的企業(yè)應(yīng)用研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2010,20(5):230-233.

[8] 張恒,梁曉婭.移動(dòng)Web位置服務(wù)的框架研究[J].微型機(jī)與應(yīng)用,2013,32(19):14-16.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。