云計(jì)算體系結(jié)構(gòu)_第1頁
云計(jì)算體系結(jié)構(gòu)_第2頁
云計(jì)算體系結(jié)構(gòu)_第3頁
云計(jì)算體系結(jié)構(gòu)_第4頁
云計(jì)算體系結(jié)構(gòu)_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、云計(jì)算體系結(jié)構(gòu)云計(jì)算基本原理女計(jì)算是對分布式處理(DistributedComputing)、并行如!(Parallel Computing)和網(wǎng)格計(jì)算(Grid Computing)及分布式數(shù)據(jù)庫的改進(jìn)處理,其前身是利用并行計(jì)算解決大型問題的網(wǎng)格計(jì)算和將計(jì)算資源作為 可計(jì)量的服務(wù)提供的公用計(jì)算,在互聯(lián)網(wǎng)寬帶技術(shù)和虛擬化技術(shù)高速發(fā)展后 萌生出云計(jì)算。許多云計(jì)算公司和研究人員對云計(jì)算采用各種方式進(jìn)行描述和定義, 基于云計(jì)算的發(fā)展和我們對云計(jì)算的理解,概括性給出云計(jì)算的基本原理為: 利用非本地或遠(yuǎn)程服務(wù)器(集群)的分布式計(jì)算機(jī)為互聯(lián)網(wǎng)用戶提供服務(wù)(計(jì)算、存儲、軟硬件等服務(wù))。這使得用戶可以將資源切

2、換到需要的應(yīng)用上,根據(jù)需求訪問計(jì)算機(jī)和存儲系統(tǒng)。云計(jì)算可以把普通的服務(wù)器或者PC連接起來以獲得超級計(jì)算機(jī)計(jì)算機(jī)的計(jì)算和存儲等功能,但是成本更低。云 計(jì)算真正實(shí)現(xiàn)了按需計(jì)算,從而有效地提高了對軟硬件資源的利用效率。云 計(jì)算的出現(xiàn)使高性并行計(jì)算不再是科學(xué)家和專業(yè)人士的專利,普通的用戶也 能通過云計(jì)算享受高性能并行計(jì)算所帶來的便利,使人人都有機(jī)會使用并行 機(jī),從而大大提高了工作效率和計(jì)算資源的利用率。云計(jì)算模式中用戶不需 要了解服務(wù)器在哪里,不用關(guān)心內(nèi)部如何運(yùn)作,通過高速互聯(lián)網(wǎng)就可以透明 地使用各種資源。云計(jì)算體系結(jié)構(gòu)云計(jì)算是全新的基于互聯(lián)網(wǎng)的超級計(jì)算理念和模式,實(shí)現(xiàn)云計(jì)算需要多種技術(shù)結(jié)合,并且需要

3、用軟件實(shí)現(xiàn)將硬件資源進(jìn)行虛擬化管理和調(diào)度,形成一個(gè)巨大的虛擬化資源池,把存儲于個(gè)人電腦、移動(dòng)設(shè)備和其他設(shè)備上的大量信息和處理器資源集中在一起,協(xié)同工作。按照最大眾化、最通俗理解云計(jì)算就是把計(jì)算資源都放到互聯(lián)網(wǎng)上,互聯(lián)網(wǎng)即是云計(jì)算時(shí)代的云。計(jì)算資源則包括了計(jì)算機(jī)硬件資源(如計(jì)算機(jī)設(shè)備、存儲設(shè)備、服務(wù)器集群、硬件服務(wù)等)和軟件資源(如應(yīng)用軟件、集成開發(fā)環(huán)境 、軟件服務(wù)) 。云計(jì)算體系結(jié)構(gòu)云計(jì)算平臺是一個(gè)強(qiáng)大的 “云” 網(wǎng)絡(luò),連接了大量并發(fā)的網(wǎng)絡(luò)計(jì)算和服務(wù),可利用虛擬化技術(shù)擴(kuò)展每一個(gè)服務(wù)器的能力,將各自的資源通過云計(jì)算平臺結(jié)合起來,提供超級計(jì)算和存儲能力。通用的云計(jì)算體系結(jié)構(gòu)如下圖所示:云計(jì)算體系結(jié)

4、構(gòu)云用戶端:提供云用戶請求服務(wù)的交互界面,也是用戶使用云的入口,用戶通過 Web 瀏覽器可以注冊、登錄及定制服務(wù)、配置和管理用戶。打開應(yīng)用實(shí)例與本地操作桌面系統(tǒng)一樣。服務(wù)目錄:云用戶在取得相應(yīng)權(quán)限(付費(fèi)或其他限制)后可以選擇或定制的服務(wù)列表,也可以對已有服務(wù)進(jìn)行退訂的操作,在云用戶端界面生成相應(yīng)的圖標(biāo)或列表的形式展示相關(guān)的服務(wù)。云計(jì)算體系結(jié)構(gòu)管理系統(tǒng)和部署工具:提供管理和服務(wù),能管理云用戶,能對用戶授權(quán)、認(rèn)證、登錄進(jìn)行管理,并可以管理可用計(jì)算資源和服務(wù),接收用戶發(fā)送的請求,根據(jù)用戶請求并轉(zhuǎn)發(fā)到相應(yīng)的相應(yīng)程序,調(diào)度資源智能地部署資源和應(yīng)用,動(dòng)態(tài)地部署、配置和回收資源。監(jiān)控:監(jiān)控和計(jì)量云系統(tǒng)資源的

5、使用情況,以便做出迅速反應(yīng),完成節(jié)點(diǎn)同步配置、負(fù)載均衡配置和資源監(jiān)控,確保資源能順利分配給合適的用戶。服務(wù)器集群:虛擬的或物理的服務(wù)器,由管理系統(tǒng)管理,負(fù)責(zé)高并發(fā)量的用戶請求處理、大運(yùn)算量計(jì)算處理、用戶 Web 應(yīng)用服務(wù),云數(shù)據(jù)存儲時(shí)采用相應(yīng)數(shù)據(jù)切割算法采用并行方式上傳和下載大容量數(shù)據(jù)。用戶可通過云用戶端從列表中選擇所需的服務(wù),其請求通過管理系統(tǒng)調(diào)度相應(yīng)的資源,并通過部署工具分發(fā)請求、配置 Web應(yīng)用。云計(jì)算體系結(jié)構(gòu)云計(jì)算服務(wù)層次在云計(jì)算中,根據(jù)其服務(wù)集合所提供的服務(wù)類型,整個(gè)云計(jì)算服務(wù)集合被劃分成4個(gè)層次:應(yīng)用層、平臺層、基礎(chǔ)設(shè)施層和虛擬化層。這4個(gè)層次每層都對應(yīng)著一個(gè)子服務(wù)集合,為云計(jì)算服

6、務(wù)層次如下圖所示:云川鋁四層棋維缶而翁朱 臺 中的 戶軀務(wù)云計(jì)算體系結(jié)構(gòu)云計(jì)算的服務(wù)層次是根據(jù)服務(wù)類型即服務(wù)集合來劃分,與大家熟悉的計(jì)算機(jī) 網(wǎng)絡(luò)體系結(jié)構(gòu)中層次的劃分不同。在計(jì)算機(jī)網(wǎng)絡(luò)中每個(gè)層次都實(shí)現(xiàn)一定的功 能,層與層之間有一定關(guān)聯(lián)。而云計(jì)算體系結(jié)構(gòu)中的層次是可以分割的,即 某一層次可以單獨(dú)完成一項(xiàng)用戶的請求而不需要其他層次為其提供必要的服 務(wù)和支持。在云計(jì)算服務(wù)體系結(jié)構(gòu)中各層次與相關(guān)云產(chǎn)品對應(yīng)。應(yīng)用層對應(yīng) SaaSC件即服務(wù)如:GoogleAPPS SoftWare+ServiceS平臺層對應(yīng)PaaST臺即服務(wù)如:舊MITFactory、GoogleAPPEngine Fi;基礎(chǔ)設(shè)施層對應(yīng)I

7、aaS基礎(chǔ)設(shè)施即服務(wù)如:AmazoEc2 IBM Blue Cloud Sun Grid;虛擬化層對應(yīng)硬件即服務(wù)結(jié)合Paas提供硬件服務(wù),包括服務(wù)器集群及硬件 檢測等服務(wù)。云計(jì)算體系結(jié)構(gòu)云計(jì)算技術(shù)層次云計(jì)算技術(shù)層次和云計(jì)算服務(wù)層次不是一個(gè)概念,后者從服務(wù)的角度來劃分 云的層次,主要突出了云服務(wù)能給我?guī)硎裁础6朴?jì)算的技術(shù)層次主要從 系統(tǒng)屬性和設(shè)計(jì)思想角度來說明云,是對軟硬件資源在云計(jì)算技術(shù)中所充當(dāng) 角色的說明。從云計(jì)算技術(shù)角度來分,云計(jì)算大約有 4部分構(gòu)成:物理資源、 虛擬化資源、中間件管理部分和服務(wù)接口,如下圖所示:取勢接口(服務(wù)接口,服勢注冊,服務(wù)在提.服務(wù)切切)計(jì)算技術(shù)層次存喈噴普池、

8、數(shù)據(jù)庫囁源刑安全管埋、映像花母J一物理贅海朋界器隼RL網(wǎng)端遺存.存儲世落. 晶搦庫)服務(wù)接口:統(tǒng)一規(guī)定了在云計(jì)算時(shí)代使用計(jì)算機(jī)的各種規(guī)范、云計(jì)算服務(wù)的 各種標(biāo)準(zhǔn)等,用戶端與云端交互操作的入口,可以完成用戶或服務(wù)注冊,對 服務(wù)的定制和使用。云計(jì)算體系結(jié)構(gòu)云計(jì)算體系結(jié)構(gòu)服務(wù)管理中間件:在云計(jì)算技術(shù)中,中間件位于服務(wù)和服務(wù)器集群之間,提 供管理和服務(wù)即云計(jì)算體系結(jié)構(gòu)中的管理系統(tǒng)。對標(biāo)識、認(rèn)證、授權(quán)、目錄、 安全性等服務(wù)進(jìn)行標(biāo)準(zhǔn)化和操作,為應(yīng)用提供統(tǒng)一的標(biāo)準(zhǔn)化程序接口和協(xié)議, 隱藏底層硬件、操作系統(tǒng)和網(wǎng)絡(luò)的異構(gòu)性,統(tǒng)一管理網(wǎng)絡(luò)資源。其用戶管理 包括用戶身份驗(yàn)證、用戶許可、用戶定制管理;資源管理包括負(fù)載

9、均衡、資 源監(jiān)控、故障檢測等;安全管理包括身份驗(yàn)證、訪問授權(quán)、安全審計(jì)、綜合 防護(hù)等;映像管理包括映像創(chuàng)建、部署、管理等。虛擬化資源:指一些可以實(shí)現(xiàn)一定操作具有一定功能,但其本身是虛擬而不 是真實(shí)的資源,如計(jì)算池,存儲池和網(wǎng)絡(luò)池、數(shù)據(jù)庫資源等,通過軟件技術(shù)來實(shí)現(xiàn)相關(guān)的虛擬化功能包括虛擬環(huán)境、虛擬系統(tǒng)、虛擬平臺。物理資源:主要指能支持計(jì)算機(jī)正常運(yùn)行的一些硬件設(shè)備及技術(shù),可以是價(jià)格低廉的PG也可以是價(jià)格昂貴的服務(wù)器及磁盤陣列等設(shè)備,可以通過現(xiàn)有網(wǎng)絡(luò)技術(shù)和并行技術(shù)、分布式技術(shù)將分散的計(jì)算機(jī)組成一個(gè)能提供超強(qiáng)功能的集群用于計(jì)算和存儲等云計(jì)算操作。在云計(jì)算時(shí)代,本地計(jì)算機(jī)可能不再像傳統(tǒng)計(jì)算機(jī)那樣需要空間

10、足夠的硬盤、大功率的處理器和大容量的內(nèi)存,只需要一些必要的硬件設(shè)備如網(wǎng)絡(luò)設(shè)備和基本的輸入輸出設(shè)備等。云計(jì)算體系結(jié)構(gòu)典型云計(jì)算平臺云計(jì)算的研究吸引了不同技術(shù)領(lǐng)域巨頭,因此對云計(jì)算理論及實(shí)現(xiàn)架構(gòu)也有所不同。如亞馬遜利用虛擬化技術(shù)提供云計(jì)算服務(wù),推出 S3( SimpleStorage Service)提供可靠、快速、可擴(kuò)展的網(wǎng)絡(luò)存儲服務(wù),而彈性可擴(kuò)展的云計(jì)算服務(wù)器EC2 (ElasticCompute Cloud)米用Xen虛擬化技術(shù),提供一個(gè)虛擬的執(zhí)行環(huán)境(虛擬機(jī)器) ,讓用戶通過互聯(lián)網(wǎng)來執(zhí)行自己的應(yīng)用程序。舊M將包括Xen和PowerVM虛擬的Linux操作系統(tǒng)鏡像與Hadoop并行工作 負(fù)載

11、調(diào)度。下面以G00gle公司的云計(jì)算核心技術(shù)和架構(gòu)作基本講解。云計(jì)算的先行者Google 的云計(jì)算平臺能實(shí)現(xiàn)大規(guī)模分布式計(jì)算和應(yīng)用服務(wù)程序,平臺包括MapReduce分布式處理技術(shù)、Hadoop框架、分布式的文件 系統(tǒng)GFS結(jié)構(gòu)化的BigTable存儲系統(tǒng)以及Google其他的云計(jì)算支撐要素。現(xiàn)有的云計(jì)算通過對資源層、平臺層和應(yīng)用層的虛擬化以及物理上的分布式集成,將龐大的IT資源整合在一起。更重要的是,云計(jì)算不僅僅是資源的簡單匯集,它為我們提供了一種管理機(jī)制,讓整個(gè)體系作為一個(gè)虛擬的資源池對外提供服務(wù),并賦予開發(fā)者透明獲取資源、使用資源的自由。云計(jì)算體系結(jié)構(gòu)MapReduce分布式處理技術(shù)Ma

12、pReduce是Google開發(fā)的Java Python、C+諭程工具,用于大規(guī)模數(shù)據(jù)集(大于 仃B)的并行運(yùn)算,也是云計(jì)算的核心技術(shù),一種分布式運(yùn)算技術(shù),也是簡化的分布式編程模式,適合用來處理大量數(shù)據(jù)的分布式運(yùn)算,用于解決問題的程序開發(fā)模型,也是開發(fā)人員拆解問題的方法。MapReduce模式的思想是將要執(zhí)行的問題拆解成 Map (映射)和 Reduce (化簡)的方式,先通過 Map程序?qū)?shù)據(jù)切割成不相關(guān)的區(qū)塊,分 配(調(diào)度)給大量計(jì)算機(jī)處理達(dá)到分布運(yùn)算的效果,再通過 Reduce程序?qū)?結(jié)果匯整,輸出開發(fā)者需要的結(jié)果。MapReduce 的軟件實(shí)現(xiàn)是指定一個(gè)Map (映射)函數(shù),把鍵值對(

13、key/value)映射成新白鍵值對(key/value),形成一系列中間形式的 key/value對,然后把它們傳給Reduce (化簡)函數(shù),把具有相同中間形式 key的value合并在一起.map和reduce函數(shù)具有一定的關(guān)聯(lián)性 1.map (k1,v1) -list(k2,v2)2.reduce(k2,list(v2) -list(v2)云計(jì)算體系結(jié)構(gòu)其中v1、v2可以是簡單數(shù)據(jù),也可以是一組數(shù)據(jù),對應(yīng)不同的映射函數(shù)規(guī)則。在 Map 過程中將數(shù)據(jù)并行,即把數(shù)據(jù)用映射函數(shù)規(guī)則分開,而Reduce則把分開的數(shù)據(jù)用化簡函數(shù)規(guī)則合在一起,也就是說 Map 是一個(gè)分的過程,Reduce則對應(yīng)著

14、合。MapReduce應(yīng)用廣泛,包括簡單計(jì)算任務(wù)、海量輸入 數(shù)據(jù)、集群計(jì)算環(huán)境等,如分布grep、分布排序、單詞計(jì)數(shù)、Web連接圖 反轉(zhuǎn)、每臺機(jī)器的詞矢量、 Web 訪問日志分析、反向索引構(gòu)建、文檔聚類、 機(jī)器學(xué)習(xí)、基于統(tǒng)計(jì)的機(jī)器翻譯等。云計(jì)算體系結(jié)構(gòu)Hadoop 架構(gòu)在Google發(fā)表MapReduce后,2004年開源社群用Java搭建出一套Hadoop 框架,用于實(shí)現(xiàn)MapReduce 算法,能夠把應(yīng)用程序分割成許多很小的工作單元,每個(gè)單元可以在任何集群節(jié)點(diǎn)上執(zhí)行或重復(fù)執(zhí)行。此外, Hadoop 還提供一個(gè)分布式文件系統(tǒng)GFS( Google file system) ,是一個(gè)可擴(kuò)展、結(jié)

15、構(gòu)化、具備日志的分布式文件系統(tǒng),支持大型、分布式大數(shù)據(jù)量的讀寫操作,其容錯(cuò)性較強(qiáng)。而分布式數(shù)據(jù)庫(BigTabl是一個(gè)有序、稀疏、多維度的映射表,有良好的伸縮性和高可用性,用來將數(shù)據(jù)存儲或部署到各個(gè)計(jì)算節(jié)點(diǎn)上。Hadoop框架具有高容錯(cuò)性及對數(shù)據(jù)讀寫的高吞吐率,能自動(dòng)處理失敗節(jié)點(diǎn),如圖 3-5所小為Google Hadoop架構(gòu)。云計(jì)算架構(gòu)Ha如p工叩跖iucHPI (MapTRoducc)Bij Table-far份布式數(shù)據(jù)庫)GFS(G岫能分布式文件系統(tǒng)!云計(jì)算體系結(jié)構(gòu)Google云計(jì)算執(zhí)行過程云計(jì)算服務(wù)方式多種多樣,通過對 Google云計(jì)算架構(gòu)及技術(shù)的理解,在此我們給出用戶將要執(zhí)行的程

16、序或處理的問題提交云計(jì)算的平臺Had00P,其執(zhí)行過程如下圖所示:MapReduce API云計(jì)算體系結(jié)構(gòu)如圖所示的Google云計(jì)算執(zhí)行過程包括以下步驟。(1)將要執(zhí)行的MPI程序復(fù)制到Hadoop框架中的Master和每一臺Worker 機(jī)器中。(2)Master選擇由哪些 Worker機(jī)器來執(zhí)行Map程序與Reduce程序。(3)分配所有的數(shù)據(jù)區(qū)塊到執(zhí)行 Map程序的Worker機(jī)器中進(jìn)行Map (切 塊數(shù)據(jù))。(4)將Map后的結(jié)果存入Worker機(jī)器。(5)執(zhí)行Reduce程序的Worker機(jī)器,遠(yuǎn)程讀取每一份Map結(jié)果,進(jìn)行混 合、匯整與排序,同時(shí)執(zhí)行Reduce程序。(6)將結(jié)果

17、輸出給用戶(開發(fā)者)。在云計(jì)算中為了保證計(jì)算和存儲等操作的完整性,充分利用MapReduce的分布和可靠特性,在數(shù)據(jù)上傳和下載過程中根據(jù)各 Worker節(jié)點(diǎn)在指定時(shí)間 內(nèi)反饋的信息判斷節(jié)點(diǎn)的狀態(tài)是正常還是死亡,若節(jié)點(diǎn)死亡則將其負(fù)責(zé)的任 務(wù)分配給別的節(jié)點(diǎn),確保文件數(shù)據(jù)的完整性。云計(jì)算體系結(jié)構(gòu)云計(jì)算應(yīng)用云計(jì)算的表現(xiàn)形式多種多樣,簡單的云計(jì)算在人們?nèi)粘>W(wǎng)絡(luò)應(yīng)用中隨處可見,如騰訊 QQ 空間提供在線制作Flash 圖片,彩字秀提供的個(gè)性文字圖片的處理,GoogleDoc和 GoogleApps、zoho、 用遠(yuǎn)程軟件進(jìn)行Office處理。對于眾多的服務(wù),可以將云計(jì)算提供的服務(wù)細(xì)分為以下 7 個(gè)類型。(

18、1)SaaS (軟ftW服務(wù))。軟件廠商將應(yīng)用軟件統(tǒng)一部署在服務(wù)器或服務(wù)器集群上,通過互聯(lián)網(wǎng)提供軟件給用戶。用戶也可以根據(jù)自己實(shí)際需要向軟件廠商定制或租用適合自己的應(yīng)用軟件,通過租用方式使用基于 Web 的軟件來管理企業(yè)經(jīng)營活動(dòng)。軟件廠商負(fù)責(zé)管理和維護(hù)軟件,對于許多小型企業(yè)來說,Saa蠅采用先進(jìn)技術(shù)的最好途徑,它消除了企業(yè)購買、構(gòu)建和維護(hù)基礎(chǔ)設(shè)施和應(yīng)用程序的需要,近年來,SaaS的興起已經(jīng)給傳統(tǒng)軟件企業(yè)帶來強(qiáng)勁的壓力。在這種模式下,客戶不再像傳統(tǒng)模式那樣花費(fèi)大量投資用于硬件、軟件、人員,而只需要支出一定的租賃服務(wù)費(fèi)用,通過互聯(lián)網(wǎng)便可以享受到相應(yīng)的硬件、軟件和維護(hù)服務(wù),享有軟件使用權(quán)和不斷升級,

19、這是網(wǎng)絡(luò)應(yīng)用最具效益 的營運(yùn)模式。云計(jì)算體系結(jié)構(gòu)SaaS常被用在企業(yè)管理軟件領(lǐng)域、產(chǎn)品技術(shù)和市場,國內(nèi)的廠商以八百 客、沃利森為主,主要開發(fā)crm、ER%在線應(yīng)用。用友、金蝶等老牌管理 軟件廠商也推出在線財(cái)務(wù)SaaST品。國際上其他大型軟件企業(yè)中,微軟提 出了 Software+SaaS勺模式,谷歌t出了與微軟 Office競爭的Google Apps, Oracle在收購 Sieble升級 Siebleon-demand 后推出 Oracle On-demand, SAP隹出了彳專統(tǒng)和SaaS的雜交(Hybrid)模式。( 2)平臺即服務(wù)。平臺即服務(wù)PaaS( Platform as a s

20、ervice)是提供開發(fā)環(huán)境、服務(wù)器平臺、硬 件資源等服務(wù)給用戶,用戶可以在服務(wù)提供商的基礎(chǔ)架構(gòu)基礎(chǔ)上開發(fā)開發(fā)程序并通過互聯(lián)網(wǎng)和其服務(wù)器傳給其他用戶。PaaS能夠提供企業(yè)或個(gè)人定制 研發(fā)的中間件平臺,提供應(yīng)用軟件開發(fā)、數(shù)據(jù)庫、應(yīng)用服務(wù)器、試驗(yàn)、托管 及應(yīng)用服務(wù),為個(gè)人用戶或企業(yè)的團(tuán)隊(duì)協(xié)作。在云計(jì)算服務(wù)中,平臺即服務(wù)包括以下類型服務(wù)。 提供集成開發(fā)環(huán)境。云服務(wù)提供商開發(fā)、測試、部署、維護(hù)應(yīng)用程序等服務(wù),滿足不同用戶需要的不同開發(fā)周期和集成開發(fā)環(huán)境,多用戶互動(dòng)測試,版本控制,部署和回滾。云計(jì)算體系結(jié)構(gòu)集成 Web 服務(wù)和數(shù)據(jù)庫。支持SOAPffi REST勺接口,組成多個(gè)網(wǎng)絡(luò)服務(wù),支持多用戶使用不

21、同數(shù)據(jù)庫的平臺,協(xié)作用戶實(shí)現(xiàn)云計(jì)算設(shè)計(jì)。支持團(tuán)隊(duì)協(xié)作。平臺服務(wù)通過共享代碼和預(yù)定義方式,可以界定、更新和跟蹤設(shè)計(jì)人員,開發(fā)、測試、質(zhì)量控制完成團(tuán)隊(duì)協(xié)作。提供實(shí)用設(shè)備。以租用方式提供相應(yīng)設(shè)備(如大型集群系統(tǒng),存儲系統(tǒng)等)以端到端方式給用戶。平臺系統(tǒng)比應(yīng)用軟件系統(tǒng)復(fù)雜,是一系列的軟件硬件協(xié)議的系統(tǒng)集合。把平臺獨(dú)立于軟件之外來另立為單獨(dú)的服務(wù)項(xiàng)目,能夠讓服務(wù)更具有目的化,易于管理和維護(hù)。PaaS能給客戶帶來更高性能、更個(gè)性化的服務(wù),也是 SaaS 今后發(fā)展的趨勢,一個(gè)SaaSt件也能給客戶在互聯(lián)網(wǎng)上提供開發(fā)(自定義)、 測試、在線部署應(yīng)用程序的功能,那么這就叫提供平臺服務(wù)PaaS Salesforc

22、e的平臺和八百客的800APP是PaaS的代表產(chǎn)品。PaaST商也吸引軟件開發(fā)商在PaaSF臺上開發(fā)、運(yùn)行并銷售在線軟件。云計(jì)算體系結(jié)構(gòu)( 3)按需計(jì)算(Utility Computing) 。按需計(jì)算,是將多臺服務(wù)器組成的 云端 計(jì)算資源包括計(jì)算和存儲,作為計(jì)量服務(wù)提供給用戶,由it領(lǐng)域巨頭如舊M的藍(lán)云、Amazon的AWS及提供存儲服務(wù)的虛擬技術(shù)廠商的參與應(yīng)用與云計(jì)算結(jié)合的一種商業(yè)模式,它將內(nèi)存、 I/O 設(shè)備、存儲和計(jì)算能力整合成一個(gè)虛擬的資源池為整個(gè)業(yè)界提供所需要的存儲資源和虛擬化服務(wù)器等服務(wù)。按需計(jì)算用于提供數(shù)據(jù)中心創(chuàng)建的解決方案,幫助企業(yè)用戶創(chuàng)建虛擬的數(shù)據(jù)中心,諸如 3Tera的

23、AppLogiG Cohesive Flexible Technologies的按需實(shí)現(xiàn)彈 性擴(kuò)展的服務(wù)器。Liquid Computing公司的LiquidQ提供類似的服務(wù),能幫助 企業(yè)將內(nèi)存、 I/0 、存儲和計(jì)算容量通過網(wǎng)絡(luò)集成為一個(gè)虛擬的資源池提供服務(wù)。按需計(jì)算方式的優(yōu)點(diǎn)在于用戶只需要低成本硬件,按需租用相應(yīng)計(jì)算能力或存儲能力,大大降低了用戶在硬件上的開銷。(4)MSP (管理服務(wù)提供麻)管理服務(wù)是面向IT廠商的一種應(yīng)用軟件,常用于應(yīng)用程序監(jiān)控服務(wù)、桌面管理系統(tǒng)、郵件病毒掃描、反垃圾郵件服務(wù)等。目前瑞星殺毒軟件早已推出云殺毒的方式,而SecureWorks、 IBM 提供的管理安全服務(wù)

24、屬于應(yīng)用軟件監(jiān)控服務(wù)類。云計(jì)算體系結(jié)構(gòu)( 5)商業(yè)服務(wù)平臺。商業(yè)服務(wù)平臺是SaaSf口 msp的混合應(yīng)用,提供一種與用戶結(jié)合的服務(wù)采集器,是用戶和提供商之間的互動(dòng)平臺,如費(fèi)用管理系統(tǒng)中用戶可以訂購其設(shè)定范圍的服務(wù)與價(jià)格相符的產(chǎn)品或服務(wù)。( 6)網(wǎng)絡(luò)集成。網(wǎng)絡(luò)集成是云計(jì)算的基礎(chǔ)服務(wù)的集成,采用通用的 云計(jì)算總線 ,整合互聯(lián)網(wǎng)服務(wù)類似的云計(jì)算公司,方便用戶對服務(wù)供應(yīng)商的比較和選擇,為客戶提供完整的服務(wù)。軟件服務(wù)供應(yīng)商 OpSource推出了 OpSourceServicesBus,使 用的就是被成為 Boomi 的云集成技術(shù)。( 7)云端網(wǎng)絡(luò)服務(wù)。網(wǎng)絡(luò)服務(wù)供應(yīng)商提供api能幫助開發(fā)者開發(fā)基于互聯(lián)網(wǎng)

25、的應(yīng)用,通過網(wǎng)絡(luò)拓 展功能性。服務(wù)范圍從提供分散的商業(yè)服務(wù)(諸如 Strike Iron和Xignite)到 涉及Google Maps、ADP薪資處理流程、美國郵電服務(wù)、Bloomberg和常規(guī) 的信用卡處理服務(wù)等的全套API服務(wù)。云計(jì)算在工作和生活中最重要的體現(xiàn)就是計(jì)算、存儲與服務(wù),當(dāng)然計(jì)算和存來完成某些功能;但是在Internet 環(huán)境下,不同語言,不同平臺對數(shù)據(jù)、甚至的業(yè)務(wù)集成問題。在下面我們會詳細(xì)討論Internet 的各種特點(diǎn)是如何決定了儲從某種意義上講同屬于云計(jì)算提供的服務(wù),因此也印證了云計(jì)算即是提供的一種服務(wù),是一種網(wǎng)絡(luò)服務(wù)。SOA-SOA簡介面向服務(wù)的體系結(jié)構(gòu)(Service

26、-OrientedArchitecture, SO是一個(gè)組件模型, 它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過這些服務(wù)之間定義良好的接口和契約聯(lián)系起來。SOA技術(shù)已存在超過20年的時(shí)間,但一直未得到廣泛的應(yīng)用。隨著 Web 服務(wù)的出現(xiàn)逐漸被人們接納,SOA終于迎來了自己的“春天”。對SOA的需要來源于需要使業(yè)務(wù)IT系統(tǒng)變得更加靈活,以適應(yīng)業(yè)務(wù)中的改變。通過允許強(qiáng)定義的關(guān)系和依然靈活的特定實(shí)現(xiàn), IT 系統(tǒng)既可以利用現(xiàn)有系 統(tǒng)的功能,又可以準(zhǔn)備在以后做一些改變來滿足它們之間交互的需要。就開發(fā)體系結(jié)構(gòu)方面而言,SOA是將來的一個(gè)發(fā)展趨勢。SOA將數(shù)據(jù)和信息作為服務(wù)公開的模型使其成為了一個(gè)非常強(qiáng)大的

27、概念,與當(dāng)前的應(yīng)用程序構(gòu)建塊范例截然不同。SO儂義SOA是指為了解決在1ntemet環(huán)境下業(yè)務(wù)集成的需要,通過連接能完成特定任務(wù)的獨(dú)立功能實(shí)體實(shí)現(xiàn)的一種軟件系統(tǒng)架構(gòu)。從這個(gè)定義中前提有下面兩點(diǎn): 八、1)軟件系統(tǒng)架構(gòu):S0A不是一種語言,也不是一種具體的技術(shù)而是一種軟件系統(tǒng)架構(gòu),它嘗試給出在特定環(huán)境下推薦采用的一種架構(gòu),從這個(gè)角度上來說,它更像一種模式(Pattern)。因此它與很多已有的軟件技術(shù)比如面向?qū)ο?技術(shù),是互補(bǔ)的而非互斥的。它們分別面向不同的應(yīng)用場景,用來滿足不同的特定需求。2) SOA的使用范圍:需求決定同時(shí)也限制功能。SOA并不是包治百病的萬靈單,它最主要的應(yīng)用場合在于解決在I

28、nternet 環(huán)境下的不同商業(yè)應(yīng)用之間SOA的特點(diǎn),這里我們只需要先簡單回顧一下Internet環(huán)境區(qū)別于Intranet環(huán)境 的幾個(gè)特點(diǎn):a)大量異構(gòu)系統(tǒng)并存,計(jì)算機(jī)硬件工作方式不同,操作系統(tǒng)不 同、編程語言也不同;b)大量、頻繁的數(shù)據(jù)傳輸仍然速度緩慢并且不穩(wěn)定; c)版本升級無法完成,我們根本就無法知道互聯(lián)網(wǎng)上有哪些機(jī)器直接或者問 接的使用某個(gè)服務(wù)?;谏厦娴那疤?,下面就讓我們一起看一下SOA的3個(gè)基本特征:.獨(dú)立的功能實(shí)體在 Internet 這樣松散的使用環(huán)境中,任何訪問請求都有可能出錯(cuò),因此任何企圖通過Internet進(jìn)行控制的結(jié)構(gòu)都會面臨嚴(yán)重的穩(wěn)定性問題。SOA非常強(qiáng)調(diào)架構(gòu)中提供

29、服務(wù)的功能實(shí)體的完全獨(dú)立自主的能力。傳統(tǒng)的組件技術(shù),如 . NET Remoting,EJB COM 或者 CORBA 都需要有一個(gè)宿主(Host 或者 Server)來存放和管理這些功能實(shí)體;當(dāng)這些宿主運(yùn)行結(jié)束時(shí)這些組件的壽命也隨之結(jié) 束。這樣當(dāng)宿主本身或者其它功能部分出現(xiàn)問題的時(shí)候,在該宿主上運(yùn)行的其它應(yīng)用服務(wù)就會受到影響。SOA架構(gòu)中非常強(qiáng)調(diào)實(shí)體自我管理和恢復(fù)能力。常見的用來進(jìn)行自我恢復(fù) 的技術(shù),比如事務(wù)處理(Transaction)消息隊(duì)列(MessageQueue),冗余部署(RedundantDeployment)和集群系統(tǒng)(Cluster)在SOA中都起到至關(guān)重要的作用。.大數(shù)據(jù)

30、量低頻率訪問對于.NET Remoting, EJB者XML-RPC&些傳統(tǒng)的分布式計(jì)算模型而言, 他們的服務(wù)提供都是通過函數(shù)調(diào)用的方式進(jìn)行的,一個(gè)功能的完成往往需要通過客戶端和服務(wù)器來回很多次函數(shù)調(diào)用才能完成。在Intranet 的環(huán)境下,這些調(diào)用給系統(tǒng)的響應(yīng)速度和穩(wěn)定性帶來的影響都可以忽略不計(jì),但是在Internet環(huán)境下這些因素往往是決定整個(gè)系統(tǒng)是否能正常工作的一個(gè)關(guān)鍵決定因素。因此SOA系統(tǒng)推薦采用大數(shù)據(jù)量的方式一次性進(jìn)行信息交換。.基于文本的消息傳遞由于1ntemet中大量異構(gòu)系統(tǒng)的存在決定了 S0A系統(tǒng)必須采用基于文本而 非二進(jìn)制的消息傳遞方式。在com、corb您些傳統(tǒng)的組件模型

31、中,從服務(wù)器 端傳往客戶端的是一個(gè)二進(jìn)制編碼的對象,在客戶端通過調(diào)用這個(gè)對象的方法是一些基本數(shù)據(jù)類型定義不同,給不同的服務(wù)之間傳遞對象帶來的很大困難。由于基于文本的消息本身是不包含任何處理邏輯和數(shù)據(jù)類型的,因此服務(wù)間只傳遞文本,對數(shù)據(jù)的處理依賴于接收端的方式可以幫忙繞過兼容性這個(gè)的大泥 坑。此外,對于一個(gè)服務(wù)來說, Internet 與局域網(wǎng)最大的一個(gè)區(qū)別就是在Internet 上的版本管理極其困難,傳統(tǒng)軟件采用的升級方式在這種松散的分布式環(huán)境中幾乎無法進(jìn)行。采用基于文本的消息傳遞方式,數(shù)據(jù)處理端可以只選擇性的處理自己理解的那部分?jǐn)?shù)據(jù),而忽略其它的數(shù)據(jù),從而得到的非常理想的兼容性。每一項(xiàng)新技術(shù)

32、都是在一些舊的技術(shù)基礎(chǔ)上發(fā)展出來的。正如XML根本思想來自于在60年代就已經(jīng)出現(xiàn)的早期標(biāo)記性語言一樣,SOA雖然這兩年才出現(xiàn), 但是它所表達(dá)的觀念應(yīng)該說在網(wǎng)絡(luò)這種分布式系統(tǒng)結(jié)構(gòu)出現(xiàn)不久就已經(jīng)廣泛應(yīng)用了。例如我們最熟悉的HTTP協(xié)議就是一個(gè)非常典型的SOA架構(gòu)設(shè)計(jì)。HTTP 協(xié)議的工作過程簡單敘述如下:1)客戶端,通常是通過瀏覽器,向服務(wù)器端以文本的方式發(fā)送一個(gè)請求,索取一個(gè) Web 頁面;2)服務(wù)器端接收到這個(gè)請求之后,根據(jù)請求的內(nèi)容進(jìn)行處理并且返回一 個(gè)符合HTML語法的文本;3)客戶端接收到服務(wù)器端的響應(yīng)文本后調(diào)用本地的程序,通常還是瀏覽 器,把返回的HTML文本的內(nèi)容展現(xiàn)出來。下面來看一

33、下HTTP協(xié)議如何滿足了 SOA的特點(diǎn):? 獨(dú)立的功能實(shí)體:作為服務(wù)器端的Web 服務(wù)器是絕對不會因?yàn)榭蛻舳说臓顩r變化而改變的,它總是非常穩(wěn)定的按照自己的內(nèi)在邏輯運(yùn)行,響應(yīng)外部的請求,管理自己的資源和數(shù)據(jù)。這里一個(gè)非常好的例子就是Web 服務(wù)器對緩存(Cache)勺處理,很多Web服務(wù)器為了提高性能都或多或少的對數(shù)據(jù)進(jìn)行緩存, 但是緩存數(shù)據(jù)、刷新數(shù)據(jù)這些于客戶端完全無關(guān)的操作完全由服務(wù)器端獨(dú)立完成,完全不受客戶端的影響。?大數(shù)據(jù)量低頻率訪問:對于一個(gè) HTTP請求來說,客戶端與服務(wù)器之間 訪問的邊界非常簡單:就是一個(gè)請求,一個(gè)響應(yīng),沒有任何其它的信息往返。無論客戶端申請的網(wǎng)頁上除了文字之外還有

34、什么信息,對于客戶端來說,它發(fā)出的請求只是簡單的告訴Web 服務(wù)器它所需要的網(wǎng)頁的位置;至于為了生成這個(gè)網(wǎng)頁,服務(wù)器端是否需要訪問數(shù)據(jù)庫,執(zhí)行 Servlet或者其它的CGI程序?qū)?戶端而言,都是完全透明的。?基于文本的消息傳遞:迄今為止兼容性最好的系統(tǒng)可能就是HTTP協(xié)議支撐的大部分的web應(yīng)用了,我們可以在 Wind0WS平臺下用IE查看互聯(lián)網(wǎng)上 一個(gè)Linux+ Apache服務(wù)器上的由Perl腳本自動(dòng)生成的網(wǎng)頁。這里的關(guān)鍵就是 所有內(nèi)容都是以格式化的文本方式傳遞的,不管 Perl腳本如何執(zhí)行,只要它的 輸出是符合HTML規(guī)范的網(wǎng)頁,就可以被客戶端的瀏覽器解釋。而由于不同的 操作系統(tǒng)上

35、對于相同的HTML 的解釋遵循相同的規(guī)范,因此不同操作系統(tǒng)下仍然能夠看到一致的用戶界面。我們上面基本描述了 SOA作為一種軟件架構(gòu)有哪些特點(diǎn),下面讓我們一起 看看 Web Service與SOA的關(guān)系。SOA與 Web ServiceWebService是就現(xiàn)在而言最適合實(shí)現(xiàn)SOA的一些技術(shù)的集合,事實(shí)上最近 SOA的火爆在很大程度上歸功于Web Service標(biāo)準(zhǔn)的成熟和應(yīng)用的普及為廣泛的 實(shí)現(xiàn)SOA架構(gòu)提供了基礎(chǔ)。下面讓我們看看 Web Service中的各種協(xié)議是如何 互相工作來滿足SOA所需的特點(diǎn)的:? 獨(dú)立的功能實(shí)體:通過UDDI 的目錄查找,我們可以動(dòng)態(tài)改變一個(gè)服務(wù)的提供方而無需影

36、響客戶端的應(yīng)用程序配置。所有的訪問都通過SOAF問進(jìn)行,只要WSDL接口封裝良好,外界客戶端是根本沒有辦法直接訪問服務(wù)器端 的數(shù)據(jù)的。?大數(shù)據(jù)量低頻率訪問:通過使用 WSDL和基于文本(Literal)的SOAP青求, 我們可以實(shí)現(xiàn)能一次性接收大量數(shù)據(jù)的接口。這里需要著重指出的是soap請求分文本方式和遠(yuǎn)程調(diào)用(rpc外種方式,正如上文已經(jīng)提到的,采用遠(yuǎn)程調(diào)用 方式的SOAP請求并不符合這點(diǎn)要求。但是令人遺憾的是現(xiàn)有的大多數(shù)SOAP請求采用的仍然是遠(yuǎn)程調(diào)用(RPC)J式,在某些平臺上,例如 舊M WebSphere的早 期版本,甚至沒有提供文本方式的 SOAP支持。?基于文本的消息傳遞:Web

37、 Service所有的通訊是通過SOAP行的,而SOAP基于XML的,不同版本之間可以使用不同的 DTD或者XMLSchema力口以辨別和區(qū)分。因此只需要我們?yōu)椴煌陌姹咎峁┎煌奶幚砭涂梢暂p松實(shí)現(xiàn) 版本控制的目標(biāo)。SOA對于軟件架構(gòu)設(shè)計(jì)的影響無論您現(xiàn)在的系統(tǒng)是否牽涉到基于Internet的業(yè)務(wù)集成,采用SOA推薦的 架構(gòu)都對提高您系統(tǒng)的擴(kuò)展性有很大幫助,下面是在系統(tǒng)中引入 S0A后需要在 軟件架構(gòu)方面做出的改變:?使用基于文本方式的SOA硼用,擺脫遠(yuǎn)程調(diào)用中出現(xiàn)的函數(shù)參數(shù)類型 等與數(shù)據(jù)無關(guān)的信息,保證所有SOAP專遞的都是有意義的商業(yè)數(shù)據(jù)。依賴于 Schema而不是類定義對這些數(shù)據(jù)進(jìn)行解釋。

38、? 傳統(tǒng)的三層Web 應(yīng)用將可能變成四層結(jié)構(gòu):傳統(tǒng)意義上的商業(yè)邏輯層將被進(jìn)一步劃分為存放每個(gè)會話(Session標(biāo)息的客戶邏輯層和與狀態(tài)無關(guān) Sateless白SOA層。? SOA為什么選擇SON不同種類的操作系統(tǒng),應(yīng)用軟件,系統(tǒng)軟件和應(yīng)用基礎(chǔ)結(jié)構(gòu)( application infrastructure )相互交織,這便是IT 企業(yè)的現(xiàn)狀。一些現(xiàn)存的應(yīng)用程序被用來處理當(dāng)前的業(yè)務(wù)流程( business processes) ,因此從頭建立一個(gè)新的基礎(chǔ)環(huán)境是不可能的。企業(yè)應(yīng)該能對業(yè)務(wù)的變化做出快速的反應(yīng),利用對現(xiàn)有的應(yīng)用程序和應(yīng)用基礎(chǔ)結(jié)構(gòu)( application infrastructure

39、)的投資來解決新的業(yè)務(wù) 需求,為客戶,商業(yè)伙伴以及供應(yīng)商提供新的互動(dòng)渠道,并呈現(xiàn)一個(gè)可以支持有機(jī)業(yè)務(wù)(organic business)的不架。SOA憑借其松耦合的特性,使得企業(yè)可 以按照模塊化的方式來添加新服務(wù)或更新現(xiàn)有服務(wù),以解決新的業(yè)務(wù)需要,提供選擇從而可以通過不同的渠道提供服務(wù),并可以把企業(yè)現(xiàn)有的或已有的應(yīng)用作為服務(wù), 從而保護(hù)了現(xiàn)有的 IT 基礎(chǔ)建設(shè)投資。如圖1的例子所示,一個(gè)使用SOA的企業(yè),可以使用一組現(xiàn)有的應(yīng)用 來創(chuàng)建一個(gè)供應(yīng)鏈復(fù)合應(yīng)用( supply chain composite application) , 這些現(xiàn)有的 應(yīng)用通過標(biāo)準(zhǔn)接口來提供功能。服務(wù)架構(gòu)服務(wù)架構(gòu)為了實(shí)現(xiàn)

40、SOA企業(yè)需要一個(gè)服務(wù)架構(gòu),圖2顯示了一個(gè)例子: 圖2在圖 2 中, 服務(wù)消費(fèi)者( service consumer) 可以通過發(fā)送消息來調(diào) 用服務(wù)。這些消息由一個(gè)服務(wù)總線(servicebus)轉(zhuǎn)換后發(fā)送給適當(dāng)?shù)姆?wù)實(shí)現(xiàn)。 這種服務(wù)架構(gòu)可以提供一個(gè)業(yè)務(wù)規(guī)則引擎( business rules engine), 該引擎容許 業(yè)務(wù)規(guī)則被合并在一個(gè)服務(wù)里或多個(gè)服務(wù)里。這種架構(gòu)也提供了一個(gè)服務(wù)管理基礎(chǔ)( service management infrastructure ) ,用來管理服務(wù),類似審核,列表( billing ) ,日志等功能。此外,該架構(gòu)給企業(yè)提供了靈活的業(yè)務(wù)流程,更好地處理控制請求

41、( regulatory requirement ) ,例如Sarbanes Oxley( SOX) , 并且可以在不影響其他服務(wù)的情況下更改某項(xiàng)服務(wù)。? SOA#礎(chǔ)結(jié)構(gòu)要運(yùn)行,管理soa應(yīng)用程序,企業(yè)需要SOA基礎(chǔ),這是SOA平臺的一 個(gè)部分。SOA基礎(chǔ)必須支持所有的相關(guān)標(biāo)準(zhǔn),和需要的運(yùn)行時(shí)容器。圖 3所示 的是一個(gè)典型的 一個(gè)典型的SOA基礎(chǔ)結(jié)構(gòu)。SoAP, WSDL, UDDIWSDL UDDI和SOAW SOA基礎(chǔ)的基礎(chǔ)部件。WSDL用來描述服務(wù); UDDI用來注冊和查找服務(wù);而SOAP作為傳輸層,用來在消費(fèi)者和服務(wù)提供 者之間傳送消息。SOAW Web服務(wù)的默認(rèn)機(jī)制,其他的技術(shù)為可以

42、服務(wù)實(shí)現(xiàn) 其他類型的綁定。一個(gè)消費(fèi)者可以在 UDDI注冊表(registry)查找服務(wù),取得 服務(wù)的WSDL描述,然后通過SOAP調(diào)用服務(wù)。WS-I BasicProfileWS-IBasic Profile,由 Web服務(wù)互用性組織(Web ServicesInteroperability Organization)提供,是SOA服務(wù)測試與互用性所需要的核心構(gòu) 件。服務(wù)提供者可以使用BasicProfile測試程序來測試服務(wù)在不同平臺和技術(shù)上 的互用性。J2EE和.Net盡管J2E邙口。NET平臺是開發(fā)SOA應(yīng)用程序常用的平臺,但SOA不僅限于此。像J2EE這類平臺,不僅為開發(fā)者自然而然地參

43、與到SOA中來提供了一個(gè)平臺,還通過他們內(nèi)在的特性,將可擴(kuò)展性,可靠性,可用性以及性能引入了 SOA世界。新的規(guī)范,例如 JAXB(JavaAPIforXMLBinding),用于I等XML文 檔定位到Java類;JAXR( Java API for XML Registry)用來規(guī)范對UDDI注冊表(registry)的操作;XMLRPC(JavaAPIfor XML-based Remote Procedure Call)在J2EE1./用來調(diào)用遠(yuǎn)程服務(wù),這使得開發(fā)和部署可移植于標(biāo)準(zhǔn)J2E由器的Web服務(wù)變得容易,與此同時(shí),實(shí)現(xiàn)了跨平臺(如。 NEP的服務(wù)互用。服務(wù)品質(zhì)在企業(yè)中,關(guān)鍵任務(wù)系

44、統(tǒng)(mission-critical system,譯注:關(guān)鍵任務(wù)系統(tǒng)是指如果一個(gè)系統(tǒng)的可靠性對于一個(gè)組織是至關(guān)重要的,那么該系統(tǒng)就是該企業(yè)的關(guān)鍵任務(wù)系統(tǒng)。比如,電話系統(tǒng)對于一個(gè)電話促銷企業(yè)來說就是關(guān)鍵任務(wù)系統(tǒng),而文字處理系統(tǒng)就不那么關(guān)鍵了。 )用來解決高級需求,例如安全性,可靠性,事物。當(dāng)一個(gè)企業(yè)開始采用服務(wù)架構(gòu)作為工具來進(jìn)行開發(fā)和部署應(yīng)用的時(shí)候,基本的Web服務(wù)規(guī)范,像WSDL SOAP以及UDDI就不能滿足這些高級需求。正如前面所提到的,這些需求也稱作服務(wù)品質(zhì)(QoS, quality ofservices*0與QoS相關(guān)的眾多規(guī)范已經(jīng)由一些標(biāo)準(zhǔn)化組織(standards bodies)

45、 提出,像 W3C (World Wide Web Consortium)和 OASIS (the Organization for the Advancement of Structured Information Standards) 。下面的部分將會討論一些QoS服務(wù)和相關(guān)標(biāo)準(zhǔn)。安全Web 服務(wù)安全規(guī)范用來保證消息的安全性。該規(guī)范主要包括認(rèn)證交換,消息完整性和消息保密。該規(guī)范吸引人的地方在于它借助現(xiàn)有的安全標(biāo)準(zhǔn),例如,SAML (as SecurityAssertion Markup Language web 服務(wù)消息的安全。OASIS致力于Web服務(wù)安全規(guī)范的制定??煽吭诘湫偷?SOA

46、 環(huán)境中,服務(wù)消費(fèi)者和服務(wù)提供者之間會有幾種不同的文檔在進(jìn)行交換。具有諸如“僅且僅僅傳送一次”( once-and-only-oncedelivery) , “最多傳送一次”(at-most-oncedelivery) , “重復(fù)消息過濾”( duplicate message elimination ) , “保證消息傳送”( guaranteed message delivery)等特性消息的發(fā)送和確認(rèn),在關(guān)鍵任務(wù)系統(tǒng)(mission-criticalsystem8 中變得十分重要。WS-Reliability 和 WSReliableMessagin/兩個(gè)用來 解決此類問題的標(biāo)準(zhǔn)。這些標(biāo)

47、準(zhǔn)現(xiàn)在都由OASI顏責(zé)。策略服務(wù)提供者有時(shí)候會要求服務(wù)消費(fèi)者與某種策略通信。比如,服務(wù)提供商可能會要求消費(fèi)者提供Kerberos 安全標(biāo)示,才能取得某項(xiàng)服務(wù)。這些要求被定義為策略斷言( policyassertions) 。一項(xiàng)策略可能會包含多個(gè)斷言。WS-Policy用來標(biāo)準(zhǔn)化服務(wù)消費(fèi)者和服務(wù)提供者之間的策略通信。控制當(dāng)企業(yè)著手于服務(wù)架構(gòu)時(shí),服務(wù)可以用來整合數(shù)據(jù)倉庫(silos of data) ,應(yīng)用程序,以及組件。整合應(yīng)用意味著例如異步通信,并行處理,數(shù)據(jù)轉(zhuǎn)換,以及校正等進(jìn)程請求必須被標(biāo)準(zhǔn)化。在 SOA中,進(jìn)程是使用一組離散的服務(wù)創(chuàng) 建的。 BPEL4WS 或者WSBPE(L Web S

48、ervice Business Process ExecutionLanguage是用來控制這些服務(wù)的語言。 WSBPE用前也由OASI歐責(zé)。管理隨著企業(yè)服務(wù)的增長,所使用的服務(wù)和業(yè)務(wù)進(jìn)程的數(shù)量也隨之增加,一個(gè)用來讓系統(tǒng)管理員管理所有運(yùn)行在多相環(huán)境下的服務(wù)的管理系統(tǒng)就顯得尤為重要。WSDM (Web Services for Distributed Management)規(guī)定了任何根據(jù) WSDM實(shí)現(xiàn)的服務(wù)都可以由一個(gè) WSDM適應(yīng)(WSDMcompliant)的管理方案來 管理。其它的qos特性,比如合作方之間的溝通和通訊,多個(gè)服務(wù)之間的事務(wù)處理,都在WS-Coordination 和 WS-

49、Transaction 標(biāo)準(zhǔn)中描述, 這些都是OASIS的工作。SOA不是Web服務(wù)在理解SOA和Web服務(wù)的關(guān)系上,經(jīng)常發(fā)生混淆。根據(jù) 2003年4月 的Gartner報(bào)道,Ye巾m V. Natis就這個(gè)問題是這樣解釋的:“ Web服務(wù)是技術(shù) 規(guī)范,而SOA是設(shè)計(jì)原則。特別是 Web服務(wù)中的WSDL是一個(gè)SOA配套的接 口定義標(biāo)準(zhǔn):這是 Web服務(wù)和SOA的根本聯(lián)系?!睆谋举|(zhì)上來說,SOA是一種 架構(gòu)模式,而Web服務(wù)是利用一組標(biāo)準(zhǔn)實(shí)現(xiàn)的服務(wù)。 Web服務(wù)是實(shí)現(xiàn)SOA的 方式之一。用Web服務(wù)來實(shí)現(xiàn)SOA的好處是你可以實(shí)現(xiàn)一個(gè)中立平臺,來獲 得服務(wù),而且隨著越來越多的軟件商支持越來越多的

50、Web 服務(wù)規(guī)范,你會取得 更好的通用性。SOASOA的優(yōu)勢SOA的概念并非什么新東西,SOA不同于現(xiàn)有的分布式技術(shù)之處在于 大多數(shù)軟件商接受它并有可以實(shí)現(xiàn) S0A的平臺或應(yīng)用程序。S0A伴隨著無處不 在的標(biāo)準(zhǔn),為企業(yè)的現(xiàn)有資產(chǎn)或投資帶來了更好的重用性。SOA能夠在最新的和現(xiàn)有的應(yīng)用之上創(chuàng)建應(yīng)用;SOA能夠使客戶或服務(wù)消費(fèi)者免予服務(wù)實(shí)現(xiàn)的改 變所帶來的影響;SOA能夠升級單個(gè)服務(wù)或服務(wù)消費(fèi)者而無需重寫整個(gè)應(yīng)用, 也無需保留已經(jīng)不再適用于新需求的現(xiàn)有系統(tǒng)。總而言之,SOA以借助現(xiàn)有的應(yīng)用來組合產(chǎn)生新服務(wù)的敏捷方式,提供給企業(yè)更好的靈活性來構(gòu)建應(yīng)用程序 和業(yè)務(wù)流程。SOA發(fā)展出來的效益平衡最初的舊

51、系統(tǒng)投資(Leverageinitial investment):組織過去所投資的系統(tǒng)、軟硬體,如果能再利用等於賦予其新的價(jià)值,這也替組織降低成本并增加競爭力?;A(chǔ)建設(shè)的便利性(Infrastructure Commoditization):讓所有的應(yīng)用程式能相互溝通(互通性)??焖俚慕咏袌?Fastertime -to-market) :服務(wù)的重復(fù)使用(再利用),來縮短過去的組織流程,更快速的提供服務(wù)來接近市場。減少支出(ReduceCost):服務(wù)的重復(fù)使用,可降低開發(fā)成本。因?yàn)殚_發(fā)新系統(tǒng)的成本,大部份 比更新舊有系統(tǒng)來的花費(fèi)大。減低風(fēng)險(xiǎn) (Riskmitigation) : 開發(fā)新系統(tǒng)

52、的風(fēng)險(xiǎn)遠(yuǎn)大於更新舊系統(tǒng)。持續(xù)改善商業(yè)流程的循環(huán)(Continuous improvement cycle for businessprocess)G.中心流程處理(Processcentric processing)實(shí)施SOA可能帶來的主要優(yōu)勢有5點(diǎn):一,SOA可通過互聯(lián)網(wǎng)服務(wù)器發(fā)布,從而突破企業(yè)內(nèi)網(wǎng)的限制,實(shí)現(xiàn) 與供應(yīng)鏈上下游伙伴業(yè)務(wù)的緊密結(jié)合。通過 SOA架構(gòu),企業(yè)可以與其業(yè)務(wù)伙伴 直接建立新渠道,建立新伙伴的成本得以降低。二,SOA與平臺無關(guān),減少了業(yè)務(wù)應(yīng)用實(shí)現(xiàn)的限制。要將企業(yè)的業(yè)務(wù) 伙伴整合到企業(yè)的“大”業(yè)務(wù)系統(tǒng)中,對其業(yè)務(wù)伙伴具體采用什么技術(shù)沒有限 制。三,soaM有低耦合性特點(diǎn),增

53、加和減少業(yè)務(wù)伙伴對整個(gè)業(yè)務(wù)系統(tǒng)的 影響較低。在企業(yè)與各業(yè)務(wù)伙伴關(guān)系不斷發(fā)生變化的情況下,節(jié)省的費(fèi)用會越 來越多。四,SOA具有可按模塊分階段進(jìn)行實(shí)施的優(yōu)勢??梢猿晒σ徊皆僮鱿?一步,將實(shí)施對企業(yè)的沖擊減少到最小。五,SOA的實(shí)施可能并不具有成本顯著性。這要分三種情況加以討論:當(dāng)企業(yè)從零開始構(gòu)建業(yè)務(wù)系統(tǒng)時(shí),采用 SOA架構(gòu)與不采用SOA架構(gòu) 成本可看做是相同的。當(dāng)企業(yè)業(yè)務(wù)發(fā)展或發(fā)生企業(yè)重組等變化而原有系統(tǒng)不能滿足需要, 而需要重構(gòu)業(yè)務(wù)系統(tǒng)時(shí),采用SOA架構(gòu)與不采用SOA架構(gòu)成本可看做是相同的。當(dāng)企業(yè)業(yè)務(wù)發(fā)生緩慢變化并可預(yù)見到將來需要重構(gòu)業(yè)務(wù)系統(tǒng)時(shí),由 于可以按模塊分階段逐步實(shí)施SOA以適應(yīng)變化的

54、需要,這樣企業(yè)不需一下投入 一大筆經(jīng)費(fèi)進(jìn)行系統(tǒng)改造,而是根據(jù)企業(yè)業(yè)務(wù)發(fā)展情況和資金情況逐步投入, 緩解了信息投入的壓力。另指半導(dǎo)體光放大器(SemiconductorOpticalAmplifer)一般有行波放大和諧振放大兩種,行波 S0A的材料和一般半導(dǎo)體激光 器相同,光纖通訊領(lǐng)域多為InP材料,放大波段1550nm附近,毅力簡單的理 解為一個(gè)沒有反饋腔的激光器,一般端面反射率小于千分之五。ETLDataIntegrator 的主要解決方案:ETL 的技術(shù)的介紹摘要: 數(shù)據(jù)集成是把不同來源、格式和特點(diǎn)的數(shù)據(jù)在邏輯上或物理上有機(jī)地集中,從而為企業(yè)提供全面的數(shù)據(jù)共享,是企業(yè)商務(wù)智能、數(shù)據(jù)倉庫系統(tǒng)

55、的重要組成部分。ETL是企業(yè)數(shù)據(jù)集成的主要解決方案。文章從 ETL的概念出發(fā),簡要分析了當(dāng)前 ETL中用到的一些基 本技術(shù),為ETL系統(tǒng)的開發(fā)和ETL技術(shù)的應(yīng)用提供一些參考。.ET蔭介隨著企業(yè)信息化建設(shè)的發(fā)展,巨大的投資為企業(yè)建立了眾多的信息系統(tǒng),以幫助企業(yè)進(jìn)行內(nèi)外部業(yè)務(wù)的處理和管理工作。但是隨著信息系統(tǒng)的增加,各自孤立工作的信息系統(tǒng)將會造成大量的冗余數(shù)據(jù)和業(yè)務(wù)人員的重復(fù)勞動(dòng)。企業(yè)應(yīng)用集成( EAI, Enterprise Application Integration )應(yīng)運(yùn)而生。EAI通過建立底層數(shù)據(jù)交換平臺來聯(lián)系橫貫整個(gè)企業(yè)的 異構(gòu)系統(tǒng)、應(yīng)用、數(shù)據(jù)源等,完成在企業(yè)內(nèi)部的ERR CRM、S

56、CM數(shù)據(jù)庫、數(shù)據(jù)倉庫,以及其它重要的內(nèi)部系統(tǒng)之間無縫地共享和交換數(shù)據(jù)的需要。數(shù)據(jù)集成是企業(yè)應(yīng)用集成的重要環(huán)節(jié),企業(yè)實(shí)現(xiàn)數(shù)據(jù)集成,可以使更多的人更充分地使用已有數(shù)據(jù)資源,減少資料收集、數(shù)據(jù)采集等重復(fù)勞動(dòng)和相應(yīng)費(fèi)用。但是,在實(shí)施數(shù)據(jù)集成的過程中,由于不同用戶提供的數(shù)據(jù)可能來自不同的途徑,其數(shù)據(jù)內(nèi)容、數(shù)據(jù)格式和數(shù)據(jù)質(zhì)量千差萬別,有時(shí)甚至?xí)龅綌?shù)據(jù)格式不能轉(zhuǎn)換或數(shù)據(jù)轉(zhuǎn)換格式后丟失信息等棘手問題,嚴(yán)重阻礙了數(shù)據(jù)在各部門和各應(yīng)用系統(tǒng)中的流動(dòng)與共享。因此,如何對數(shù)據(jù)進(jìn)行有效的集成管理已成為增強(qiáng)企業(yè)商業(yè)競爭力的必然選擇。ETL是實(shí)現(xiàn)數(shù)據(jù)集成的主要技術(shù)。ETL中三個(gè)字母分另1J代表的是Extract、Trans

57、form、Load,即抽取、轉(zhuǎn)換、加載。( 1 )數(shù)據(jù)抽?。簭脑磾?shù)據(jù)源系統(tǒng)抽取目的數(shù)據(jù)源系統(tǒng)需要的數(shù)據(jù);( 2 )數(shù)據(jù)轉(zhuǎn)換:將從源數(shù)據(jù)源獲取的數(shù)據(jù)按照業(yè)務(wù)需求,轉(zhuǎn)換成目的數(shù)據(jù)源要求的形式,并對錯(cuò)誤、不一致的數(shù)據(jù)進(jìn)行清洗和加工。( 3 )數(shù)據(jù)加載:將轉(zhuǎn)換后的數(shù)據(jù)裝載到目的數(shù)據(jù)源。ETL本是作為構(gòu)建數(shù)據(jù)倉庫的一個(gè)環(huán)節(jié),負(fù)責(zé)將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)如關(guān) 系數(shù)據(jù)、平面數(shù)據(jù)文件等抽取到臨時(shí)中間層后進(jìn)行清洗、轉(zhuǎn)換、集成,最后加載到數(shù)據(jù)倉庫或數(shù)據(jù)集市中,成為聯(lián)機(jī)分析處理、數(shù)據(jù)挖掘的基礎(chǔ)?,F(xiàn)在也越來越多地將 ETL應(yīng)用于一般信息系統(tǒng)中數(shù)據(jù)的遷移、交換和同步。一個(gè)簡單的ETL體系結(jié)如圖1.1所示。.ETL

58、中的關(guān)鍵技術(shù)ETLM程中的主要環(huán)節(jié)就是數(shù)據(jù)抽取、數(shù)據(jù)轉(zhuǎn)換和加工、數(shù)據(jù)裝載。為了實(shí)現(xiàn)這些功 能,各個(gè)ETL工具一般會進(jìn)行一些功能上的擴(kuò)充,例如工作流、調(diào)度引擎、規(guī)則引擎、腳 本支持、統(tǒng)計(jì)信息等。數(shù)據(jù)抽取數(shù)據(jù)抽取是從數(shù)據(jù)源中抽取數(shù)據(jù)的過程。實(shí)際應(yīng)用中,數(shù)據(jù)源較多采用的是關(guān)系數(shù)據(jù)庫。從數(shù)據(jù)庫中抽取數(shù)據(jù)一般有以下幾種方式。(1)全量抽取全量抽取類似于數(shù)據(jù)遷移或數(shù)據(jù)復(fù)制,它將數(shù)據(jù)源中的表或視圖的數(shù)據(jù)原封不動(dòng)的從數(shù)據(jù)庫中抽取出來,并轉(zhuǎn)換成自己的ETL工具可以識別的格式。全量抽取比較簡單。(2)增量抽取ETL使增量抽取只抽取自上次抽取以來數(shù)據(jù)庫中要抽取的表中新增或修改的數(shù)據(jù)。在 用過程中。增量抽取較全量抽取

59、應(yīng)用更廣。如何捕獲變化的數(shù)據(jù)是增量抽取的關(guān)鍵。對捕獲方法一般有兩點(diǎn)要求:準(zhǔn)確性,能夠?qū)I(yè)務(wù)系統(tǒng)中的變化數(shù)據(jù)按一定的頻率準(zhǔn)確地捕獲到;性能,不能對業(yè)務(wù)系統(tǒng)造成太大的壓力,影響現(xiàn)有業(yè)務(wù)。目前增量數(shù)據(jù)抽取中常用的捕獲變化數(shù)據(jù)的方法有:a.觸發(fā)器:在要抽取的表上建立需要的觸發(fā)器,一般要建立插入、修改、刪除三個(gè)觸發(fā)器,每當(dāng)源表中的數(shù)據(jù)發(fā)生變化,就被相應(yīng)的觸發(fā)器將變化的數(shù)據(jù)寫入一個(gè)臨時(shí)表,抽取線程從臨時(shí)表中抽取數(shù)據(jù),臨時(shí)表中抽取過的數(shù)據(jù)被標(biāo)記或刪除。觸發(fā)器方式的優(yōu)點(diǎn)是數(shù)據(jù)抽取的性能較高,缺點(diǎn)是要求業(yè)務(wù)表建立觸發(fā)器,對業(yè)務(wù)系統(tǒng)有一定的影響。b.時(shí)間戳:它是一種基于快照比較的變化數(shù)據(jù)捕獲方式,在源表上增加一個(gè)

60、時(shí)間戳字段,系統(tǒng)中更新修改表數(shù)據(jù)的時(shí)候,同時(shí)修改時(shí)間戳字段的值。當(dāng)進(jìn)行數(shù)據(jù)抽取時(shí),通過比較系統(tǒng)時(shí)間與時(shí)間戳字段的值來決定抽取哪些數(shù)據(jù)。有的數(shù)據(jù)庫的時(shí)間戳支持自動(dòng)更新,即表的其它字段的數(shù)據(jù)發(fā)生改變時(shí),自動(dòng)更新時(shí)間戳字段的值。有的數(shù)據(jù)庫不支持時(shí)間戳的自動(dòng)更新,這就要求業(yè)務(wù)系統(tǒng)在更新業(yè)務(wù)數(shù)據(jù)時(shí),手工更新時(shí)間戳字段。同觸發(fā)器方式一樣,時(shí)間戳方式的性能也比較好,數(shù)據(jù)抽取相對清楚簡單,但對業(yè)務(wù)系統(tǒng)也有很大的傾入性(加入額外的時(shí)間戳字段) ,特別是對不支持時(shí)間戳的自動(dòng)更新的數(shù)據(jù)庫,還要求業(yè)務(wù)系統(tǒng)進(jìn)行額外的更新時(shí)間戳操作。另外,無法捕獲對時(shí)間戳以前數(shù)據(jù)的 delete 和 update 操作,在數(shù)據(jù)準(zhǔn)確性上受

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論