




已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀
(計算機科學與技術專業(yè)論文)異步可靠web服務關鍵技術的研究與實現(xiàn).pdf.pdf 免費下載
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
國 防 科 學 技 術 人 學 研 究 生 院 學 位 論 文 摘要 w e b 服務 ( we b s e r v ic e s ) 作為一種新興的中間件技術,己 經(jīng)被廣泛應用于各種電子 商務中。就目 前而合 一 ,它僅僅局限于基于同步信息獲取的簡單應用,而對于以異步傳輸和 高可靠性為特征的復雜應用的 支持尚不足, 這就大大降低了w e b 服務在諸如信貸業(yè)務等一 些大型關鍵應用領域的競爭力。 隨著w e b 服務 應用范圍的擴展和研究的不斷深入, 靈活的 消息傳輸機制和可靠的服務質(zhì)量成為許多研究者關注的熱點問題. 但對于w e b 服務中消息 傳輸機制和可靠性的定義目 前尚未形成統(tǒng)一的標準和規(guī)范。 本文以 基于i n t e r n e t 的應用集成為 背景, 以 現(xiàn)有的we b 服務體系結(jié)構和規(guī)范集合為基 礎, 基于消息中間件技術, 研究了we b 服務中的異步消息傳遞機制和可靠性, 并以此為基 礎開發(fā)了一個能夠提供異步可靠we b 服務的中間件系統(tǒng)。 本文的主要工作包括: 1 .本文基于w e b 服務體系結(jié)構研究了w e b 服務的消息機制, 分析了同 步傳輸與異步 傳輸兩種不同的底層消息傳輸機制,以 及同步操作與異步操作兩種不同的消息模式, 并在 此基礎上詳細討論了基于同步傳輸實現(xiàn)異步we b 服務操作的四種消息模式; 2 .研究了 可靠w e b 服務的參考模型與 特點, 在此基礎上分析了 現(xiàn)有w e b 服務規(guī)范集 合 對于 可 靠性的 支持, 提出了 基于成熟的m o m ( m e s s a g e o r i e n t e d m i d d l e w a r e ) 技術 保證 服務器端消息的可靠投遞與應用的可靠執(zhí)行。 3 .基于我們研制的w e b 服務部署與管理環(huán)境s t a r we b a d a p t o r 設計并實現(xiàn)了支持異步 可靠w e b 服務的s o a p 2 j ms 中n j 件系統(tǒng)。該系統(tǒng)山s e t ( s o a p - j m s i n t e r - t r a n s f o r m e r ) 和a m ( a s y n c h r o n o u s m e s s a g in g ) 組 成, s e t 完 成了s o a p 消 息和j m s 消 息 之間 的 互 譯, 并對整個s o a p - j m s 系統(tǒng)進行管理和配置; a m則提供了w e b 服務請求者和提供者之間的 消息傳遞機制。 本文對we b 服務中異步性和可靠性的探索將對提高we b 服務的效率和服務質(zhì)量、擴 展w e b 服務的應用領域有著重要的實際意義。 關 鍵詞: w e b 服務, 異 步消 息, 可 靠 性, 面向 消 息的 中 間 件 石 一-一一一、 一 一一一一- 一一一一一一- i 國 防 科 學 技 術 大 學 研 究 生 院 學 位 論 文 abs t ract b e i n g a n e m e r g i n g m i d d l e w a r e , we b s e rv i c e s ( ws ) h a v e b e e n w id e l y a p p l i e d i n a l l k i n d s o f e - c o m m e r c e . p r e s e n t l y t h o s e a p p l i c a t i o n s a r e a l l c o n f i n e d i n t h e s i m p l e b u s i n e s s c o m i n g f r o m t h e s y n c h r o n o u s m e s s a g e a c q u i r e m e n t . h o w e v e r i t i s n o t g o o d f o r t h o s e s o p h i s t i c a t e d b u s i n e s s w h i c h n e e d t h e a s y n c h r o n o u s m e s s a g e t r a n s m i s s i o n a n d h i g h r e l i a b i l i t y . s o it e m b a r r a s s e s ws c o m p e t i t i o n o n t h e l a r g e - s c a l e a n d k e y a p p l i c a t i o n s d o m a i n . wi t h we b s e rv i c e s a p p l i c a t i o n s c o p e e x p a n d i n g a n d f u rt h e r r e s e a r c h i n g , t h e fl e x ib l e m e s s a g e t r a n s m i s s i o n a n d r e l i a b l e q u a l i t y o f s e rv i c e h a v e c o l l e c t e d m a n y a t t e n t i o n s f r o m l o t s o f i n v e s t i g a t o r s . h o w e v e r t h e r e a r e n o t e x i s t i n g u n i f o r m s t a n d a r d s a n d s p e c i f i c a t i o n s d e f i n i n g w h a t m e s s a g e t r a n s m i s s i o n a n d r e l i a b i l it y a r e u n d e r t h e s p e c i f ic we b s e rv i c e s c o n t e x t . t h i s t h e s i s b a s e s o n t h e c u r r e n t we b s e rv i c e s a r c h i t e c t u r e , s p e c i f i c a t i o n s a n d m e s s a g e o r i e n t e d mid d l e w a r e , t a k e s t h e c r e d i t d o m a i n a s t y p ic a l a p p l i c a t i o n s c e n e t o i n v e s t i g a t e t h e a s y n c h r o n o u s m e s s a g e t r a n s m i s s i o n a n d r e l i a b i l i t y . t h e n , o n t h e b a s i s o f o u r s t u d y , w e d e v e l o p a m i d d l e - w a r e s y s t e m f o r s u p p l y i n g as y n c h r o n o u s a n d r e l i a b l e we b s e rv i c e s . t h e p r i m a r y c o n t r ib u t i o n s o f t h i s t h e s i s in c l u d e t h e f o l l o w i n g t h r e e p a rt s . f i r s t l y , b a s e d o n t h e ws c o n c e p t a r c h i t e c t u r e t h i s t h e s i s i n v e s t i g a t e s m e s s a g e m e c h a n i s m , a n a l y z e s t h e u n d e r l y i n g s y n c h r o n o u s / a s y n c h r o n o u s m e s s a g e t r a n s m i s s i o n a n d synchronous/asynchronous m e s s a g e o p e r a t i o n s . ma k i n g t h e f o r m e r r e s e a r c h a s f o u n d a t i o n , t h i s t h e s i s d i s c u s s e s a t l e n g t h f o u r m e s s a g e p a tt e r n s b a s e d o n t h e s y n c h r o n o u s m e s s a g e tr a n s m i s s i o n w h i c h c o u l d c o m p l e t e as y n c h r o n o u s ws o p e r a t io n . s e c o n d l y , w e a d v a n c e t h e r e l i a b l e we b s e rvi c e s r e f e r e n c e m o d e l a n d d i s c u s s i t s c h a r a c t e r i s t i c s . t h e n a ft e r a n a ly z i n g t h e s u p p o rt f r o m t h e e x i s t i n g ws s p e c i f i c a t i o n s , w e p u t f o r w a r d t h e s e rv e r s i d e r e l i a b l e m e s s a g e d e l i v e ry a n d t h e r e l i a b l e i m p l e m e n t o f a p p l i c a t i o n s b a s e d o n t h e a s s u r a n c e f r o m t h e m a t u r e m e s s a g e o r i e n t e d m i d d l e w a r e . l a s t , g r o u n d e d o n o u r d e v e l o p e d ws d e p l o y m e n t a n d c o n f i g u r a t i o n t o o l s t a r w e b a d a p t o r l .0 , w e d e s i g n a n d i m p l e m e n t a s u p p l y i n g a s y n c h r o n o u s r e l i a b l e ws m i d d l e w a r e s y s t e m c a l l e d s o a p - j ms , w h i c h c o n s i s t s o f s e t ( s o a p - j ms i n t e r - t r a n s f o r m e r ) a n d a m ( a s y n c h r o n o u s me s s a g i n g ) . s j i t c o m p le t e s t h e i n t e r - t r a n s l a t io n b e t w e e n s o a p a n d j ms , f u rt h e r m o r e p r o v i d e s t h e m a n a g e m e n t a n d c o n f i g u r a t i o n o f e n t i r e s y s t e m ; a m s u p p l i e s t h e fl e x i b l e m e s s a g e t r a n s m i s s i o n b e t w e e n t h e we b s e rv i c e s p r o v i d e r s a n d r e q u e s t o r s . t h e e x p l o r a t i o n t o t h e a s y n c h r o n i m a n d r e l i a b il it y o f ws h a s t h e s i g n i f i c a n t p r a c t i c e m e a n i n g f o r im p r o v in g t h e p e r f o r m a n c e, q u a l i t y o f s e rv ic e o f ws a n d e x p a n d in g t h e s c o p e o f ws a p p l i c a t i o n s . k e y w o r d s : we b s e rvi c e s , a s y n c h r o n o u s me s s a g e , r e l i a b i l it y , me s s a g e o r i e n t e d mi d d l e wa r e , - 一一 一一一一一一一一_ i t 獨創(chuàng)性聲明 本人聲明 所呈交的學位論文是我本人在導師指導下進行的研究工作及取得 的 研究成果. 盡我 所知, 除了 文中 特別加以 標注和致謝的地方外, 論文中 不包含 其他人已 經(jīng)發(fā)表和撰寫過的 研究 成果, 也不包含為獲得國防 科學技術大學或其它 教育機構的 學位或證書而 使用過的 材料. 與我一同工作的同志對本研究所做的 任 何貢獻均已 在論文中 作了明 確的說明并 表示謝意。 學 位 論 文 題目 :異步 可 靠w e b 服 務 關 鍵 技 術 的 研究 與 實 現(xiàn) 學 位 論 文 作 者 簽 名 : 1 4 翻日 期: 2 0 0 弓年/ 2月 2 0 日 學位論文版權使用授權書 本人完全了 解國防 科學技術大學有關保留、 使用學位論文的 規(guī)定. 本人授權 國防 科學技術大學可以 保留 并向國 家有關部門 或機構送交論文的復印 件和電 子 文 檔, 允許論文被查閱和借閱; 可以 將學 位論文的 全部或部分內(nèi) 容編入有關數(shù)據(jù) 庫進 行檢索, 可以 采用影印 、 縮印 或掃 描等復制手段 保存、匯 編學 位論文。 保密學位論文在解密 后適用本授權書. ) 學 位 論文 題目 :異步 可 靠w e b 服 務殺 健技 術的 研究 與實 現(xiàn) 學位論文作者簽名: 作者指導教師簽名: z z4 f ,z 4 日 期 : 加弓 年/ ; 月 沙日 日 期: j , 夕 7年 a月yr 日 國 防 科 學 技 術 大 學 研 究 生 院 學 位 論 文 圖 目 錄 圖 1 . 1 we b服務角色、操作和構件. . . . . . . . . . . . . . . . . . . . . 1 圖 1 . 2 w e b 服 務 協(xié) 議 棧 , . . . . . . . . . . . . . . , . , . . . . , , 2 圖2 . 1 j m s 編 程 模 式. . . . . , . . . . . . . . . . . 。 , , 一 6 圖 2 , 2同步模型與延遲同步模型. . . 、 二、 . . . , , . 8 圖 2 . 3回調(diào)模式 . . . . . . . 、 . , . , , . . . . . . . . . . . , ., 1 0 圖 2 . 4輪詢模式.“. , , . . . . . , . , .i 1 圖 2 . 5典型場景., . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 圖 2 . 6 p u b / s u b 模式. . . . , . . . . . . . . . . . . . . . . . 1 4 圖 2 . 7 p 2 p 模式 . . , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 圖 2 . 8 j ms 應用場景 . . . . . . . . . . . . . . . . . . . . 卜. . . . . 1 5 價181919202223別25肪283032323334肪3839394043 圖 2 . 9 s o a p / j ms 圖 2 . 1 0 mo m作為一種 we b 圖 2 . 1 1 mo m調(diào)用we b 服務 圖2 . 1 2 s o a p / j m s 消息格式 圖 2 . 1 3 j m s / s o a p 消息格式 服 i 圖 3 . 1 模式一:單向和通知操作. . . . . 圖 3 . 2模式二:基于異步傳輸?shù)漠惒讲僮鞫?, 二 圖 3 . 3模式三;基于同步傳輸?shù)妮喸兡J?, 圖 3 . 4 模式四: 基于同步傳輸?shù)幕卣{(diào)模式, . 圖 3 . 5 w e b 服務可 靠消息 模型 . , , , 圖 3 . 6可靠消息傳遞示例. . . . . . . . . . . 圖4 . 1 系統(tǒng)總體結(jié)構 . . . . . . . . . 圖 4 . 2回調(diào)時序圖 ., . . . . . . . . 圖 4 . 3請求/ 應答劃分時序圖 , . . 圖4 . 4 r e p ly h a n d l e r 類圖, . 卜 . 圖 4 . 5請求/ 應答關聯(lián)圖. . . . . . . . . 圖4 . 6 s j i t 系統(tǒng)結(jié)構. , . . . . . . 圖 4 . 7管理模塊. . . . . . . . . . . . . . . . , . 圖 4 . 8 s o a p 消息組成 . . . . . . . 圖 4 . 9消息類圖. . . . . . . . . 卜. . 圖 4 . 1 0 s o a p 消息類圖. . . . . . , 圖4 . 1 1 j n d i 適配模塊類圖 二, 二 卜 . ,二卜 iv 國 防 科 學 技 術 大 學 研 究 生 院 學 位 論 文 圖 5 . 1測試案例圖 二, . . . . . . . . . . . . . . . . . . . . , . . , 4 5 圖 5 . 2帶有s a t的測試案例圖. . . . . . . . . . . . . . . . ,. . , . , 4 5 圖 5 . 3 m e t e : 的執(zhí)行主界面. . . . . . . . . . . . . , . . . . . . . . . . . 4 6 圖 5 . 4 7 me t e r 執(zhí)行 s o a p調(diào)用的主界面 . . . . , . ,. . . . . . . . 4 7 圖 5 . 5同步測試結(jié)果圖, . . . . . , 二, . , 二, ,二4 8 圖 5 . 6異步測試結(jié)果圖. . . . . . . . . . , , . . . . . . . . . . , 4 8 圖 5 . 7同步與異步比較圖. , . . . . . . . . . . . . . . , . . . . . 4 9 一一-一一 一- 一一一一 一一一一 . 一. -一一 v 國防科學技術人學研究生院學位論文 第一章緒論 1 1 研究背景 對于什么是w e b 服務,目前存在著很多的定義,我們這里引用w 3 c 組織公布的w e b 服務體系結(jié)構( w e bs e r v i c e sa r c h i t e c t u r e ) 中對w e b 服務的定義力圖闡述其具有的特點: w e b 服務是描述一些操作( 利用標準化的x m l 消息傳遞機制可以通過網(wǎng)絡訪問這 些操作) 的接口。w e b 服務是用標準的、規(guī)范的x m l 概念描述的,稱為w e b 服務的 服務描述。這一描述囊括了與服務交互需要的全部細節(jié),包括消息格式( 詳細描述操作) 、 傳輸協(xié)議和位置。該接口隱藏了實現(xiàn)服務的細節(jié),允許獨立于實現(xiàn)服務基于的硬件或軟件 平臺和編寫服務所用的編程語言使用服務。這允許并支持基于w e b 服務的應用程序成為 松散耦合、面向組件和跨技術實現(xiàn)。w e b 服務履行一項特定的任務或一組任務。w e b 服 務可以單獨或同其它w e b 服務一起用于實現(xiàn)復雜的聚集或商業(yè)交易。 w e b 服務體系結(jié)構基于三種角色( 服務提供者、服務注冊中心和服務請求者) 之j 瑚的 交互。交互涉及發(fā)稚、查找和綁定操作。這些角色和操作一起作用于w e b 服務構件:w c b 服務軟件模塊及其描述。在典型情況下,服務提供者托管可通過網(wǎng)絡訪問的軟件模塊( w e b 服務的一個實現(xiàn)) 。服務提供者定義w e b 服務的服務描述并把它發(fā)布到服務請求者或服 務注冊中心。服務請求者使用查找操作來從本地或服務注冊中心檢索服務描述,然后使用 服務描述與服務提供者進行綁定并調(diào)用w e b 服務實現(xiàn)或同它交互。服務提供者和服務請 求者角色是邏輯結(jié)構,因而服務可以表現(xiàn)兩種特性。圖1 1 顯示了這些操作、提供這些 操作的組件及它們之間的交互。 圖1 1w e b 服務角色、操作和構件 作為一個分布式應用的開發(fā)環(huán)境,w e b 服務必須有一個包含每一層標準的w e b 服務 第1 頁 國防科學技術人學研究生院學位論文 協(xié)議棧。圖1 2 展示了一個概念性w e b 服務協(xié)議棧。上面的幾層建立在下面幾層提供的 功能之上。 w s d l s o a p h t t p j m s s m t p 圖1 2w e b 服務協(xié)議棧 w e b 服務協(xié)議棧的基礎是網(wǎng)絡層。w e b 服務要被服務請求者調(diào)用,就必須是可以通 過網(wǎng)絡訪問的。因特網(wǎng)上可以公用的w e b 服務使用普遍部署的網(wǎng)絡協(xié)議。h t t p 憑借其 普遍性,成為了因特網(wǎng)可用的w e b 服務真正的標準網(wǎng)絡協(xié)諑。w e b 服務還可以支持其它 因特網(wǎng)協(xié)議,包括s m t p 和f t p 。 從w e b 服務的體系結(jié)構中可以看出,w e b 服務并未限制其使用的應用模式,也并未 將其與底層的傳輸協(xié)議進行綁定,所以,在w e b 服務體系結(jié)構和標準規(guī)范之內(nèi),為應用提 供異步性與可靠性支持是可行的。 i 2 應用背景 今天,處理x m l 編碼s o a p 消息、通過h t t p 作為首選的底層傳輸協(xié)議、使用w s d l 描述的w e b 服務已經(jīng)廣泛應用在互聯(lián)網(wǎng)上。它的使用范圍主要集中在應用集成方面:從簡 單的,尤其是數(shù)據(jù)共享的應用到大規(guī)模的互聯(lián)網(wǎng)零售業(yè)和現(xiàn)金交易。目前,不斷發(fā)展的 w e b 服務已經(jīng)涉足于移動計算、移動設備和網(wǎng)格的應用之中。 作為w e b 服務的突出特點,它提供了在異構的企業(yè)計算環(huán)境中,分布的軟件組件之間 良好的互操作性,而這也總是廣大l t 消費者,丌發(fā)者以及參與者所面臨的棘手問題。h t t p 和s o a p 協(xié)議提供了傳輸和消息一級的互動,w s d l 通過描述了部署的w e b 服務和交換 接口定義以提供分布應用間的互操作。這些基本的規(guī)范使得消費者和i t 廠商能夠解決許多 重要的實際應用問題,在這些成功的基礎之上,開發(fā)者正試圖利用w e b 服務技術解決更為 復雜的問題和提供更加優(yōu)秀的功能。利用已經(jīng)開發(fā)處理的w e b 服務工具,開發(fā)者希望加強 互操作的功能和質(zhì)量。而許多商業(yè)執(zhí)行過程也希望中間件提供類似于異步消息、安全、事 務和可靠方面的功能。 為了讓我們對異步可靠w e b 服務有一個大致的了解,來看圖1 3 ,該圖反映了廣泛使 用的一種w e b 服務場景,而且也闡明了今天在w e b 服務世界中廣泛存在的w e b 服務設計 第2 頁 國防科學技術人學研究生院學佗論文 問題。 服務清求肴 服務提供者 圖1 3w e b 服務典型應用場景 圖中,服務請求者是帶有一個基本產(chǎn)品目錄的控制系統(tǒng),該系統(tǒng)負責運行商用處理邏 輯以跟蹤并管理所有產(chǎn)品信息的變化。服務提供者是一個帶有負責平衡部件的系統(tǒng),它使 用網(wǎng)絡復雜平衡技術將到達的消息分配到各個服務流程。通訊的雙方使用異構的體系結(jié)構 ( 包括代理和防火墻等) 連接至互聯(lián)網(wǎng)上提供服務。雙方進行交換的信息對于他們的商業(yè) 操作來說都是至關重要的。首先,服務流程的處理時間通常較長,往往超過了在個網(wǎng)絡 鏈接超時的時間內(nèi)返回執(zhí)行結(jié)果:其次,由于客戶與業(yè)務流程交互過程中,通常傳輸?shù)臄?shù) 據(jù)都是比較重要的商業(yè)數(shù)據(jù),對數(shù)據(jù)傳輸和執(zhí)行的可靠性有較高的要求。因此,對異步和 可靠的消息傳遞機制的要求隨之產(chǎn)生。 目前,對消息傳輸和可靠性主要有以下的解決方案: 消息傳輸: 試圖使基于s o a p 的消息能夠運行在除h t t p 之外的其它協(xié)議上,如j m s ; _ 試圖使s o a p 消息能夠用于單向消息傳遞、雙向消息傳遞和對等會話的工作。 可靠性: 通過標準合作組織制定新的規(guī)范; 一通過硬件、操作環(huán)境和基礎架構供應商改進其產(chǎn)品確保更好的可靠性。 本課題試圖在w e b 服務的消息傳輸和可靠性方面進行一定深度的探索,在消息傳輸機 制上,設計并實現(xiàn)使s o a p 能夠用于異步消息傳輸?shù)臋C制,實現(xiàn)雙向異步消息的傳遞;在 可靠性方面,以成熟的消息中間件技術為基礎框架,力圖在服務提供方內(nèi)部確保消息和服 務的可靠性。 第3 頁 國 防 科 學 技 術 人 學 研 究 生 院 學 位 論 文 1 . 3課題來源 本課題 來源 于 ( no . 2 0 0 2 aa1 1 6 0 4 0 ) 8 6 3 課題 ,基 于 we b s e r v i c e s的應 用 集成 關鍵 技術研 究 1 . 4課題目標 以 異步性和可靠性為目 的,基于分布式計算平臺w e b 服務, 研究w e b 服務提供的消 息機制; 之后研究成熟的消息中間件系統(tǒng)及其對消息可靠性的支持:最后, 研究在關鍵消 息傳遞壞境中異步消息通信機制和可靠消息通信制;在上述研究的基礎上,基于 s t a r we b a d a p t o : 平臺, 設計并實現(xiàn)了s o a p - j ms 橋接系統(tǒng)。 1 . 5論文結(jié)構 在緒論之后, 第二章將分別詳細介紹異步we b 服務的概念和實現(xiàn)機制, 著重講述同步 傳輸、 異步傳輸、 同步操作和異步操作在w e b 服務環(huán)境中的不同含義; 以 及就可靠性展開 討論, 其中著重講述we b 服務環(huán)境下,mo m技術與we b 服務的關系。 在這兩章的研究 基礎之上, 在第三章中, 將就we b 服務下, 實 現(xiàn)異步性給出 詳細的設計模式, 在可靠性方 面, 給出可靠we b 訪問的參考模型, 并討論它的 特點。 之后的第四 章根據(jù)前一章的設計原 理, 進行詳細的設計。最后的第五章將對我們實現(xiàn)的系統(tǒng)進行簡單的測試,并給出分析結(jié) 論。 應該說, 第二章中 研究的重點貫穿了 全文, 并且提供了在第四章中設計和實現(xiàn)的思路。 1 . 6本文的研究成果 本文對we b 服務環(huán)境下的異步消息機制和可靠性進行了深入的研究, 在此基礎上設計 了 可以 提供異步可靠w e b 的s i l l 系統(tǒng), 并在s t a r w e b a d a p t o r l .。 平臺 上加以 實現(xiàn)。同時, 通過對該系統(tǒng)的測試,驗證了它的異步性和可靠性,從而能夠有效的提高系統(tǒng)的效率。 在 研究期間,以第一作者在第 2 0屆全國數(shù)據(jù)庫學術會議論文集上發(fā)表文章一篇 ( 見本文附 錄 )。 第 4頁 國 防 科 學 技 術 大 學 研 究 生 院 學 位 論 文 第二章 課題關鍵技術研究 異步性作為一種與時間相關的技術手段,一直以來就廣泛存在于計算機世界中,本章 將在w e b 服務的環(huán)境中, 詳細介紹與異步性相關的 特點, 并從理論的角度著重講 述四個概 念:同步傳輸、異步傳輸、同步操作、異步操作; 之后, 將根據(jù)這些概念給出 幾種異步服 務的設計模式;最后簡要介紹目 前這個領域一些有代表性的研究成果。 2 . 1異步we b 服務關鍵技術 2 . 1 . 1同步傳輸 用于交換 we b服務消息的傳輸可以歸為同步和異步兩類。其中同步傳輸包括: .ht t p ; h t t p s ; r mi i i i o p ; s mt p 這里就h t t p的同步傳輸進行簡要的介紹。 h t t p 是一個屬于傳輸層的 協(xié)議, 由 于其簡捷、 快速的方式, 適用于分布式信息系統(tǒng)。 h t t p 協(xié)議的主要特點可概括如下: . 支持客戶/ 服務器模式。 . 簡單快速:客戶向服務器請求服務時,只需傳送請求方法和路徑。 請求方法常用 的有g e t , h e a d . p o s t 。 每種方法規(guī)定了 客戶與服務器聯(lián)系的類型不同。由 于 h t t p 協(xié)議簡單, 使 得h t t p 服務 器的 程序 規(guī) 模小,因 而通信速度很快。 . 靈活: h t t p 允許傳輸任意類型的數(shù)據(jù)對象。 正在傳輸?shù)?類型由c o n t e n t - t y p e 加以 標記。 . 無連接:無連接的含義是限制每次連接只處理一個請求。服務器處理完客戶的請 求,并收到客戶的應答后,即斷開連接。采用這種方式可以節(jié)省傳輸時間。 . 無狀態(tài): h t t p 協(xié)議是無狀態(tài)協(xié) 議.無 狀態(tài)是指協(xié)議對于事務處理沒有記憶能力。 缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導致每 次連接傳送的數(shù)據(jù)量增大。另一方面,在服務器不需要先前信息時它的應答就較 快。 2 . 1 . 2異步傳輸 傳輸協(xié)議本身就支持響應消息與請求消息的相關性以便應用程序使用,并支持 “ 推” ( p u s h ) 和“ 拉”印 u l l ) 類型消 息交換的 傳輸 通常 被稱為異 步傳輸。 可以 用于 支持 異步 操 作的傳輸?shù)氖纠? 第 5頁 國 防 科 學 技 術 人 學 研 究 生 院 學 位 論 文 h t t p r; j ms i bm m s m q s e r i e s消息傳遞 ( i b m m q s e r i e s m e s s a g i n g ) 消 息 傳 遞( m s m e s s a g i n g ) . 這里對j ms 異步傳輸機制進行簡要的介紹。 圖2 . 1 j m s 編程模式 j ms 異步消息傳輸是在軟件組件或應用程序之間進行通信的一種方法。 j ms 系統(tǒng)是一 種對等的消息設施:一個消息傳遞客戶可以向其他任何客戶發(fā)送消息;或從任何其他客戶 接收消息 息的能力 。每個客戶連接到一個消息傳遞代理,該代理提供了 創(chuàng)建、發(fā)送、接收和讀取消 j m s 異步消息傳輸應用了 松散禍合的分布式通信. 一個組件把消息發(fā)送到目 的地, 接 收者能夠從目 的地獲取這個消息。但是,消息的發(fā)送者和消息的接收者不需要同時活躍才 能進行信息通信。事實上,雙方不需要對對方有任何的了解。發(fā)送者和接收者只需要使用 相同的消息格式,目的地的位置即可。在這方面, j ms消息傳遞不同于緊禍合的技術,如 遠程方法調(diào)用 ( r e m o t e m e t h o d i n v o k e r m i ), 它要求應用程序了 解遠程方法接口 的詳細 信息。 j m s 消息傳遞也不同于郵件系統(tǒng),郵件是人與人之間或人與軟件之間進行通信的一 種方法,消息傳遞用于軟件應用或軟件組件之間的通信。 不管正用于異步操作的傳輸機制是否異步,客戶機 ( 或者客戶機所用的服務代理) 和 服務提供者負責生成一個相關標志,傳輸在管理請求和響應時可以使用這個相關標志。 通 常情況下, 當商業(yè)伙伴利用 w e b服務集成他們的業(yè)務流程時, 他們更傾向于 使用 h t t p . h t - f p s和 h t t p r作為傳輸進行跨i n t e rn e t 通信; 在企業(yè)內(nèi), 當 存在相似的應用程序平臺 第 6頁 國 防 科 學 技 術 大 學 研 究 生 院 學 位 論 文 時, 將使用本機傳輸及接口,比如 j m s , r m i / i i o p和 j c a ( j a v a連接體系架構, j a v a c o n n e c t i o n a r c h i t e c t u r e )。異步傳輸使客戶機能夠在請求一個服務調(diào)用后繼續(xù)在自己的執(zhí) 行線程土處理;它們還提供一些機制使客戶機能夠確定它的 we b服務請求的狀態(tài)并能夠 檢索對那些請求的響應。不提供在另一個執(zhí)行線程上初始化響應傳輸能力的 we b服務的 實現(xiàn)將無法用于異步操作。這種實現(xiàn)的示例是那些在前端數(shù)據(jù)庫應用程序中使用的 e j b 或者通過使用本地接口 ( 比如 j c a )提供對企業(yè)系統(tǒng)的訪問的實現(xiàn)。 2 . 1 .3同步操作 在通常的情況下, 請求與應答作為一個不可分割的事務被視為整體。 為了更好的解釋, 我們引入以下的定義: 定義2 . 1 : w e b 服務環(huán)境。 是一個四元組 ( p , m t ( m e s s a g e t r a n s m i t t e r ) , o , m) 。 . p 是 客 戶 程 序, 它由 一 個 操作 序 列o p i o p 2 0 p 3 o p n 構 成。 其中, 任一 操 作o p i 可以 是 本 地操作,也可以是調(diào)用遠端服務的操作。 . o是遠端服務接口, 接收并執(zhí)行來自 客戶的 請求。 . m t 是p 和。之間的傳輸渠道. 起著通信中 介的 作用。 . m 是消息集合, 可表示為m二 m i , m 2 ,, in k ,它包括p 和o通過m t 傳遞的 所有請求和應答。 每個m ; ( m ; g m) 的生命期都是從p 開始, 經(jīng)mt 到o , 然后再從o 經(jīng)m t 返回p , 結(jié)束。當m ; 從p 經(jīng)m t 傳遞給o時, m ; 包含的 是請求消息;當m 從 o經(jīng)m t返回p 時, m 、 包含的是應答消息。為了 描述一個消息的生命期, p 在發(fā)出 每 條消息的時候,都為它們分配了一個標識,我們用下標來表示。消息在傳遞過程中, 內(nèi) 容可以由 請求消息轉(zhuǎn)變?yōu)閼鹣ⅲ?但消息的標識是不會改變的。為了 保障標識的 唯一性,也為了便于不同的消息進行比較,消息標識定義為時間的函數(shù),即若p先發(fā) 消 息m ; , 后 發(fā) 消 息m 1 , 則 一定i 定義 2 . 2 : 若 o p . 是遠程 操作,則 o p ; 定義為一個動作序列 a i ( m k 1 ) a 2 ( m k 2 ) . . . a (mk) , ( m k i , 一 m k e m ) 。 其 中 , 動 作a i ( m k i) 表 示 該 動 作 對 標 識 為k , 的 消 息m k , 進 行 處 理 , 且 a j ( m k i) e s ( m k i) , r ( m k i) , 其中s (mk; ) 表示 發(fā) 送一 個 標識 為k ; 的 消 息 給m t , r (mk; ) 表示 從mt讀取一個標識為k ; 的消息。 定義2 . 3 : 遠程操作o p i 屬于同 步調(diào) 用 模型 2 . 2 ) 當 且僅當o p ; = s ( m k ;) r ( m k ;) i m k ; e m-( 如圖 定 義2 . 4 : 遠 程 操 作o p . 和o p i ( j 1)屬 于 延 遲 同 步 調(diào) 用 模型 , 當 且 僅 當o p 、 二 s (mk;) , 且 o p i 二r ( m k ;), m k ; g m-( 如圖2 . 2 ) 第 7頁 國 防 科 學 技 術 人 學 研 究 生 院 學 位 論 文 cli e 爪 s e r v e rcl i e n t 準備請求 qo nn wa i t yes處 處理應答 圖 2 . 2同步模型與延遲同步模型 根據(jù)前面的定義,同步模型采用了嚴格同步的操作處理請求消息和應答消息。如圖 2 . 2 , c l i e n t 發(fā)出請求后,阻塞等待應答。當應答返回后,c l i e n t 繼續(xù)執(zhí)行應答的處理邏輯。 該模型的優(yōu)點是調(diào)用邏輯符合人的自 然思考方式, 編程簡單。而缺點是對于單線程。 l i e n t , 當它阻塞等待應答時, 無法處理任何其它工作, 不適于需要充當c l i e n t 角色的s e r v e : 應用。 在實現(xiàn)上,針對同步模型的一個改進是引入多線程機制,即以不同的子線程加載同步 操作,當子線程等待應答消息的時候, 主線程繼續(xù)處理其它操作, 這在一定程度上可以改 善系統(tǒng)資源利用率。 但是,線程的使用又帶來了新問 題。首先,過多線程的使用會降低系 統(tǒng)的可伸縮性。 當同步操作的數(shù)目比 較大時, 眾多的線程本身將占用系統(tǒng)大量的寶貴資源, 同時線程之間的切換和管理也使系統(tǒng)增加額外的開銷, 這些將使系統(tǒng)性能大大降低。 其次, 在目 前的分布對象標準中, 線程屬于未被標準化的部分,因此線程的使用還存在可移植性 的問題。 延遲同 步調(diào)用模型放松了同步模型的同 步要求 ( 如圖2 . 2 ) , c l i e n t 發(fā)送請求后, 執(zhí)行 線程返回, 繼續(xù)處理其它工作。 隨后, c l i e n t 可以在多個不同的時間點向m t查詢應答是否 返回。如果應答返回, c l i e n t 從mt提取應答,并執(zhí)行相應處理。其優(yōu)點是避免c l i e n t 阻塞 等待,能 夠在s e r v e r 調(diào)用服務期間,并行地處理一些其它事情, 有利于提高c l i e n t 的資 源 利用率。其缺點是把應用邏輯分割為不同時間點上的離散步驟,當許多調(diào)用交叉重疊在一 起時, 編程復雜;有些情況下, s e r v e : 服務于調(diào)用的時間可長可短、難以預料,查詢應答 的成功率 有時會很低, 隨著查詢次數(shù)的增加, c l i e n t 的 效率越來越低。 o n e w a y 調(diào)用模型是 對前述 模型的簡 單化, 具有一 定的 異步性, 即 操作向m t 提 交請 求 消 息 后 即 返 回。 但 是, 這種 模型 沒 有給 應答 消 息 的 處 理 做出 定 義, 客 戶程 序 僅 通 過o n e w a y 調(diào) 用模型無法得知請求消息是否被目 標對象服務以 及服務結(jié)果如何.因此, 對于許多應用 ( 包 括高 性能 應用) , o n e w a y 調(diào) 用模型由 于太簡單而不能 勝任。 j t 魚 鰲 o n e w a y i19 墊 貍 鯉 鯉. 魚 壁 迪 衛(wèi)r a o n e w a y 第 8頁 的調(diào)用模型4 1 ,即。 l ie n t 國 防 科 學 技 術 人 學 研 究 生 院 學 位 論 文 在調(diào)用目 標對象的一個 o n e w a y 操作的同時, 傳遞一個本地對象的對象引用給目 標對象。 然后, 駐留 在s e r v e r 上的目 標對象就可以 利用這個對象引用, 反過來向 最初的c l i e n t 調(diào)用 另 一 個o n e w a y 操作。 這種方法的 不足之處是, s e r v e r 方目 標 對象需要提供兩套服務 代碼. 一套針對普通請求即同 步 t w o - w a y操作和采用動態(tài)調(diào)用接口 ( d i i )的延遲同步操作, 另 一套專門 針對o n e w a y 操作,這使得s e r v e r 變得冗余且龐大。另外,在每個請求中 增加一 個對象引 用, 使得網(wǎng)絡開銷明顯增加了。 特別是, 這種方法無法處理系統(tǒng)異常。當 請求在 s e r v e r 方被服務期間產(chǎn)生系統(tǒng)異常, 那么這次請求將被流產(chǎn), 但是。 l i e n t 卻無法得知這一情 況。 這是因為。 l i e n t 發(fā)出的。 n e w a y 調(diào)用本身不支持任何應答( 包括含有異常的 應答) 返回, 而s e r v e r 產(chǎn)生 異常的時候, s e r v e r 也 無法 通過另一個o n e w a y 返回任何信息。 在we b 服務的環(huán)境中,s o a p 協(xié)議典型的操作方式是同步的r p c方式 ( s o a p / h t t p ), 因 此,以 這種方式開發(fā)的we b 服務, 就不可避免的要受到同步操作所帶來的種種弊端。 2 . 1 . 4異步操作 然而并不是所有的we b 服務都以同步的方式工作, 在某些情況下,對于we b 服務請 求的 應答并不能夠立即產(chǎn)生,而是在請求過程結(jié)束之后,并斷開鏈接之后,所有具有這些 特點的 操作稱為異步操作。目 前, we b 服務規(guī)范和標準集合并沒有顯示的給出 異步操作的 定 義, 但是, 現(xiàn)有的w e b 服務系統(tǒng)框架和機制完全可以 作為異步操作的實現(xiàn)基礎。 從本質(zhì)上來說,分布式對象間的操作都是異步的,同步
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 光伏電站個人年終總結(jié)模版
- 從概念到落地探討如何利用區(qū)塊鏈推動企業(yè)數(shù)字化轉(zhuǎn)型
- 倉庫廠房加盟合同范例
- 2025年初中數(shù)學教師年度考核個人總結(jié)模版
- 低價漁具轉(zhuǎn)讓合同范例
- 中介住宅租賃合同范例
- 在家長會上的小學生發(fā)言稿模版
- 創(chuàng)新研發(fā)背景下科技企業(yè)市場擴張風險控制策略
- 中英雙語購銷合同范例
- 醫(yī)療大數(shù)據(jù)時代的醫(yī)療質(zhì)量管理
- 燃氣企業(yè)壟斷風險的控制節(jié)點
- 2023-2024學年人教版數(shù)學八年級下冊期末復習試卷
- 工程人合伙協(xié)議書范本
- 第18課《在長江源頭各拉丹東》課件+2023-2024學年統(tǒng)編版語文八年級下冊
- 造紙化學品3課件
- 第五章-包裝容器造型設計
- MOOC 介入放射學-東南大學 中國大學慕課答案
- 數(shù)字貿(mào)易學 課件 第1章 導論
- 廣東省省級政務信息化(2024年第一批)項目需求-廣東省財政廳業(yè)務系統(tǒng)運維運營服務(2024年)項目
- 寄拍行業(yè)分析
- 培訓地坪漆課件
評論
0/150
提交評論