劉彬辛
(貴州煙葉復(fù)烤有限責(zé)任公司,貴州 貴陽 550005)
【摘 要】在企業(yè)發(fā)展前期,由于各部門信息系統(tǒng)的獨立性,導(dǎo)致企業(yè)在后期信息系統(tǒng)發(fā)展中無法對整體系統(tǒng)進(jìn)行資源整合利用,本文通過對基于云計算的SOA企業(yè)架構(gòu)設(shè)計進(jìn)行分析與研究,提出一種在整體設(shè)計上采用SOA思想,基于云計算技術(shù)的混合架構(gòu)模式,以提高企業(yè)運(yùn)行效率。
【關(guān)鍵詞】SOA;云計算技術(shù);應(yīng)用架構(gòu)設(shè)計
隨著全球信息化的不斷深入及互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,系統(tǒng)與系統(tǒng)之間的聯(lián)系也越來越為緊密。在早期企業(yè)應(yīng)用集成的方式多是EAI,但由于缺乏統(tǒng)一的標(biāo)準(zhǔn),所以系統(tǒng)集成后又會產(chǎn)生新的孤島。如何對‘遺留系統(tǒng)進(jìn)行整合,以確保其核心應(yīng)用程序的穩(wěn)定,也是企業(yè)在發(fā)展中的難題之一。
一、SOA技術(shù)理念
面向服務(wù)的體系結(jié)構(gòu)是一個組件模型,它能夠?qū)?yīng)用程序的不同功能單元(服務(wù))通過這些服務(wù)之間只見丁以良好的接口和契約連接來。接口是采用中立的方式進(jìn)行定義的,它應(yīng)該獨立于實現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)和編程語言。如此可使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一、通用的方式進(jìn)行交互。
(一)SOA的體系結(jié)構(gòu)
SOA是一種粗顆粒、松耦合服務(wù)架構(gòu),服務(wù)之間通過簡單、精準(zhǔn)定義接口進(jìn)行通訊,不會涉及底層編程接口和通訊模型。它可以根據(jù)需求通過網(wǎng)絡(luò)對松散耦合的粗粒度應(yīng)用組件進(jìn)行分步式部署、組合及使用。服務(wù)是SOA的基礎(chǔ),可直接進(jìn)行運(yùn)用與調(diào)用,從而有效控制同種與軟件代理交互的人為依賴性。
(二)SOA的核心技術(shù)
WSDL(web servicer definition language ),web服務(wù)描述定義語言。Wsdl描述了web服務(wù)的接、消息格式約定、訪問地址三方面的基本內(nèi)容。被服務(wù)者只有通過正確的接口描述才可以向系統(tǒng)發(fā)送正確的調(diào)用信息,而且服務(wù)的通信協(xié)議、訪問地址、發(fā)送給服務(wù)的信息格式約定也是訪問格式之前必要的基本信息。
(三)SOA的特點及優(yōu)勢
SOA松散耦合的特點能夠去除系統(tǒng)兩端緊密控制的需求。能夠使系統(tǒng)的性能、可伸縮性及可利用性有很大的提升,可實現(xiàn)每個系統(tǒng)模塊都可以獨立管理。同時企業(yè)通過采用SOA體系結(jié)構(gòu),有利于企業(yè)降低開發(fā)成本及開發(fā)維護(hù)難度。
二、云計算
云計算可以將一組可配置的共享計算資源包括服務(wù)器、存儲、應(yīng)用服務(wù)及網(wǎng)絡(luò)等通過無處不在的網(wǎng)絡(luò)系統(tǒng)提供給用戶使用,而且用戶幾乎不需要與服務(wù)提供方進(jìn)行交互。云計算起源于國外大型互聯(lián)網(wǎng)企業(yè),主要研發(fā)目的在于對IT資源的高效利用及應(yīng)用的可擴(kuò)展性。云計算根據(jù)服務(wù)部署的位置可分為公有云、私有云及混合云三種形式。
(一)云計算的特點
云計算是通過資源共享的方式來提高資源的利用率,以此可大幅降低計算成本。在早期企業(yè)的信息化系統(tǒng)中形成了很多信息孤島,造成了數(shù)據(jù)庫、web應(yīng)用和web資源的浪費(fèi);云計算則可以實現(xiàn)隨時隨地、靈活快捷的從可配置計算機(jī)資源共享中心中獲取所需資源,獲取的資源也能夠快速供應(yīng)并釋放,能夠?qū)ζ髽I(yè)信息資源進(jìn)行規(guī)范的、綜合的、統(tǒng)一的集成與應(yīng)用,從而提高企業(yè)在IT應(yīng)用方面的有效優(yōu)勢。
(二)云計算較傳統(tǒng)IT模式的優(yōu)勢
資源共享性:服務(wù)提供方可以將存儲、處理、內(nèi)存及網(wǎng)絡(luò)計算資源匯集到資源中心,可根據(jù)用戶的不同需求對不同的物理資源、虛擬資源進(jìn)行動態(tài)分配,并通過多租戶模式共享給多位用戶。
動態(tài)伸縮性:云計算能夠快速且靈活地提供各類功能以實現(xiàn)擴(kuò)展,而且能夠快速釋放資源來完成收縮。云計算不針對特定應(yīng)用,云服務(wù)可以同時支撐不同的程序運(yùn)行。
高可靠性:云計算采用的是大規(guī)模計算系統(tǒng),采用了了數(shù)據(jù)多副本容錯、計算節(jié)點同構(gòu)并且可相互互換等設(shè)計,用以保障服務(wù)應(yīng)用的良好的可靠性能。
成本優(yōu)勢;云計算雖然需要龐大的資源中心來支撐,但其特殊容錯措施可以采用廉價的節(jié)點來構(gòu)造,且其使用的自動化集中式的管理方法可以有大幅降低企業(yè)信息管理成本。
三、基于云計算的SOA企業(yè)架構(gòu)設(shè)計
從上述對計算及SOA的分析中可以看出,二者的結(jié)合能夠有效滿足企業(yè)信息化建設(shè)所需的高穩(wěn)定性、擴(kuò)展性、易維護(hù)及低成本特點?;诖耍P者做出了企業(yè)云框架設(shè)計,以實現(xiàn)企業(yè)資源的共享及高效利用,減少或消除信息孤島,實現(xiàn)企業(yè)信息系統(tǒng)的集成與應(yīng)用整合。
1、基于云計算的SOA架構(gòu)設(shè)計是由云應(yīng)用和云平臺兩層構(gòu)成,云應(yīng)用層為SaaS,云平臺則融合了LaaS和PaaS。對于多數(shù)企業(yè)來說,構(gòu)架的云計算模型分為兩層是相對合理的,因為企業(yè)中的多數(shù)用戶僅限于使用應(yīng)用程序而非其下的基礎(chǔ)設(shè)施支撐環(huán)境。兩層框架的設(shè)計其云服務(wù)的單元功能適度且隱藏了各自功能的具體細(xì)節(jié),僅面向接口實現(xiàn)與調(diào)用,如此有利于提高開發(fā)人員的工作效率,實現(xiàn)對資源靈活的配置及高效的利用,且可滿足企業(yè)快速發(fā)展的業(yè)務(wù)需要。
2、云平臺層
云平臺層是由企業(yè)中一系列服務(wù)器、存儲、網(wǎng)絡(luò)、及其他硬件以及運(yùn)行其上的操作系統(tǒng)、開發(fā)環(huán)境、服務(wù)總線、數(shù)據(jù)庫管理系統(tǒng)和應(yīng)用程序的運(yùn)行環(huán)境等構(gòu)成。云平臺層繼承了各類應(yīng)用程序開發(fā)和運(yùn)行的資源,可虛擬出一個面向研發(fā)人員專用的編程接口。云平臺層一般不對終端用戶開放,僅對軟件開發(fā)人員、配置管理員、和系統(tǒng)管理員授權(quán)使用其重要的核心構(gòu)建有:基礎(chǔ)資源:即通過服務(wù)器虛擬化技術(shù)講一個物理服務(wù)器虛擬為多個云服務(wù)器,也可以將數(shù)個物理服務(wù)器虛擬為一個云服務(wù)器;通過存儲虛擬化技術(shù)就能夠?qū)ζ髽I(yè)中全部的存儲資源進(jìn)行統(tǒng)一整合、調(diào)度、分割、管理,為用戶、數(shù)據(jù)庫、應(yīng)用程序提供一個統(tǒng)一、規(guī)范的云數(shù)據(jù)存儲中心。
服務(wù)總線:通過統(tǒng)一的標(biāo)注接口來提供服務(wù)注冊、查找、服務(wù)綁定和調(diào)用等重要功能,來完成服務(wù)之間的交互。功能包括:描述服務(wù)的元數(shù)據(jù)和服務(wù)管理;在服務(wù)方和服務(wù)請求方之間進(jìn)行數(shù)據(jù)轉(zhuǎn)換、傳遞的功能。
元數(shù)據(jù)庫:是為企業(yè)建立、修改、刪除原數(shù)據(jù)及進(jìn)行規(guī)則審查流程再次開發(fā)的服務(wù)。用于存儲企業(yè)全部業(yè)務(wù)數(shù)據(jù)庫的元數(shù)據(jù)庫結(jié)構(gòu),規(guī)范定義各業(yè)務(wù)數(shù)據(jù)庫的苦命、源頭、數(shù)據(jù)類型等其他屬性,以確保每個業(yè)務(wù)元數(shù)據(jù)的規(guī)范性及完整性。
3、云應(yīng)用層
云應(yīng)用層是基于企業(yè)各種應(yīng)用的虛擬應(yīng)用平臺,它可以面向不同終端的UI集合,從技術(shù)角度分析,該層是對企業(yè)信息系統(tǒng)全部用戶界面的集成,它把應(yīng)用程序?qū)Φ讓酉到y(tǒng)和硬件的依賴進(jìn)行了抽象處理,解除了應(yīng)用與操作關(guān)系和硬件的耦合關(guān)系,同時對UI及其應(yīng)用環(huán)境和其支持的設(shè)備終端進(jìn)行了解耦,所以用戶可以使用臺式電腦、手機(jī)、筆記本電腦等各類終端設(shè)備,通過web瀏覽器且基于安全、穩(wěn)定的網(wǎng)絡(luò)環(huán)境下使用。若出現(xiàn)新的業(yè)務(wù)需求,研發(fā)人員可基于該平臺的服務(wù)池進(jìn)行少許開發(fā)就可以形成新的應(yīng)用程序及其UI,新應(yīng)用的部署及使用所需時間也會大幅減少,在此過程中都無需與用戶進(jìn)行再次交互。綜合上述,可初步完成企業(yè)基于云計算的SOA架構(gòu)設(shè)計。
四、總結(jié)
企業(yè)的長遠(yuǎn)發(fā)展離不開信息系統(tǒng)的高效管理與利用,SOA在軟件行業(yè)中是一項較為成熟的架構(gòu)設(shè)計思想,將云計算與SOA結(jié)合,在進(jìn)行企業(yè)信息資源整合和解決遺留系統(tǒng)中能夠充分發(fā)揮出二者的優(yōu)點,為企業(yè)信息化的快速發(fā)展及業(yè)務(wù)所需提供新的動力與支持。
【參考文獻(xiàn)】
[1]楊照華,楊浩杰. 基于云計算的SOA企業(yè)架構(gòu)設(shè)計[J]. 計算機(jī)光盤軟件與應(yīng)用,2012,01:159+156.
[2]張建榮. 基于云計算的SOA企業(yè)架構(gòu)設(shè)計[J]. 硅谷,2012,06:30.
[3]張曉娟,易明巍. 基于云計算與SOA的企業(yè)集成架構(gòu)及實現(xiàn)[J]. 計算機(jī)系統(tǒng)應(yīng)用,2011,09:1-6.
[4]張欽. 基于云計算和SOA的企業(yè)信息系統(tǒng)應(yīng)用框架設(shè)計與應(yīng)用展望[J]. 中國海上油氣,2013,01:91-94+99.