《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > Aglets中的設計模式分析研究

Aglets中的設計模式分析研究

2009-08-20
作者:胡 濤 王汝傳

  摘? 要:移動代理系統Aglets的應用體系結構、類結構及應用設計進行了討論。

  關鍵詞: 移動代理? Aglets系統? 設計模式

?

  隨著Internet用戶的急劇增加,人們對網絡技術和網絡應用給予了更多的關注。傳統的分布式計算模式因其靈活性差、系統擴充和升級代價較高而無法適應新的分布式計算要求。新技術的發展和應用需要新的具有革命性進步的計算模式,而基于移動代理的計算模式便是這樣一種很有前途的計算模式。移動代理可被看作是傳統通信機制的一種擴展。由于移動代理模式的特殊優勢是能明確控制代碼在何處運行,因此特別適用于諸如萬維網這樣的動態異構網絡環境。移動代理擁有很多優點,如減少網絡流量、增加客戶機和服務器的異步性、便于負載均衡和容錯、支持移動客戶和服務定制等。它在通信網絡管理、智能網領域、Internet上的智能信息檢索以及分布計算領域有著廣泛的應用前景。

  Aglet是由IBM日本公司用純JAVA開發的移動Agent技術,它提供了Aglet Workbench平臺,供人們開發和實施移動Agent系統。Agent是一個較為成功的移動代理系統,它主要提供了一個簡單而全面的移動代理編程模型,為代理間提供了動態和有效的通信機制,并提供了一套詳細而簡易的安全機制。簡單地說,Aglet就是具有Agent行為的Applet對象。

  設計模式面向對象設計的復用。研究設計模式的目的就是為了使人們更加簡單、方便地復用成功的設計和體系結構。具體地講,一個設計模式包括模式的名稱、問題范圍、解決方案和效果,它主要應用于基于OO的設計。目前已知的設計模式包括3類23個模式。

  Aglets是一個面向對象的系統,它擁有一個比較明晰的類體系結構和一套完整的對象應用解決方案。研究Aglets的設計模式有助于人們更加充分地認識移動代理系統從理論走向應用所需要解決的問題,有利于對Aglets系統的充分應用,也有利于認識到Aglets的不足之處,為發展出更好的移動代理應用體系結構打下基礎。

1? Aglets系統簡介

1.1 Aglets的應用體系結構

  Aglets的體系結構如圖1所示。Aglet的執行分為若干階段。首先當一個正在執行的Aglet要到達遠端時,它會對Aglet Runtime層發出請求;接著Aglet Rumtime層把Aglet的狀態信息與代碼轉化為序列化的字節數組。這時如果請求成功,系統會將字節數組傳送至ATCI(Agent Transport and Communication Interface)層處理。此層提供可以使用ATP(Agent Transfer Protocol)的接口,這里ATP為一個簡單的應用層協議,如圖2所示。系統將字節數組附上相關的系統信息(如系統名稱及Aglet的ID等)后以位流的方式通過網絡傳送至遠端機器。遠端機器利用ATCI層提供的ATP接口接收傳來的字節數組及系統信息;然后Aglet Runtime層對字節數組進行反序列化操作,得到Aglet的狀態信息和代碼;最后Aglet在遠端繼續加載執行。

?

  Aglets系統通過提供一個上下文環境(Context)來管理Aglet的基本行為。Aglets的生命周期行為包括創建(Create)、復制(Clone)、分派(Dispatch)、召回(Retract)、暫停(Deactive)、喚醒(Active)及清除(Dispose)等。圖3為Aglets的生命周期行為圖。

            

?

  Aglet之間的通信可以通過消息實現,如圖4所示。基于安全的考慮,Aglet不能直接訪問,必須通過一級Proxy對象實現。并且這樣做還可以使Aglet位置透明。也就是說,如果Aglet想與遠端Aglet通信,則只需要在本地環境中生成遠端Aglet的代理(Proxy)對象,并不需要知道對方的位置和處理網絡通信等。

1.2 Aglets的主要類結構

  在Aglets的編程模型中,涉及到的主要類有:com.ibm.aglet.Aglet、com.ibm.aglet.AgletProxy、com.ibm.aglet.AgletContext、com.ibm.aglet.Message、com.ibm.aglet.FutureReply。下面分別予以介紹。

  (1)com.ibm.aglet.Aglet。這是一個抽象類,用于控制代理的生命周期行為。它定義了代理的基本行為方式,例如發送、創建等。所有在Aglets中生存的代理都必須從這個抽象類中繼承。此外,Aglet類也用于訪問與Aglet相關的一些屬性。例如,可以通過Aglet.getAgletInfor()調用得到并訪問一個AgletInfor對象,并訪問與Aglet相關的一些靜態屬性和動態屬性。

  (2)Com.ibm.aglet.AgletProxy。在Aglet系統里,這個類是處理Aglet類的一般方法。出于安全方面的考慮,許多Aglet類的方法或者屬性是不能直接訪問的。如果要與這個Aglet通信,則必須通過一個AgletProxy對象來實現。AgletProxy相當于Aglet的一個外殼(參看圖4)。當調用產生的時候,AgletProxy對象會通過SecurityManager決定是否允許這次調用。這樣還能使得Aglet的位置透明。

  AgletProxy對象可以通過下列幾種方式獲取:

 ?、僬{用AgletContext.getAgletProxies()獲取多個AgletProxy對象;

 ?、谕ㄟ^AgletID作為參數調用取得相關的AgletProxy對象;

??? ③將AgletProxy對象作為參數通過消息傳送;

??? ④將AgletProxy作為參數將對象傳送至ContexProperty。

  (3)com.ibm.aglet.AgletContext。這個對象用于將Aglet所處的環境映射到一個訪問接口中,供Aglet訪問。每個Aglet對象都可以通過getAgletContext()方法訪問到該對象,并通過它調用一些系統功能,可以將它看做一個系統環境接口。

  (4)com.ibm.aglet.Message。所有的Aglet通信都通過構造Message對象來實現。Message對象可以傳送字符串和對象消息。Aglet之間可以通過Proxy對象發送消息,或者通過下面要介紹的FutureReply對象發送異步消息。消息接收方通過Aglet.handleMessage(Message msg)來處理消息。

  (5)Com.ibm.aglet.FutureReply。這是一個接口,是用于傳送異步消息并不阻塞當前執行線程的一種消息傳送方式。它通過調用Proxy對象的sendAsyncMessage(Message msg)返回。

1.3 Aglets應用設計框架

  Aglets提供了一個Aglet Workbench的可視化環境,用于建立和使用基于Aglets平臺的網絡應用系統。目前該軟件主要提供下列幾個方面的工具:

  (1)Aglets框架:提供Aglets平臺的基本功能框架。

  (2)ATP:Aglet傳輸協議。

  (3)Tazza:可視化應用所需的個性化移動Agent。

  (4)JDBC:訪問DB2數據庫。

  (5)JoDax:訪問單位的數據。

  (6)Tahiti:可視化Aglet管理界面,用于監視和控制Aglet的執行。

  (7)Fiji:通過Fiji Applet使得用戶可以在Web上監視Aglet Context,以便實現產生、分派、召回Aglet的功能。

2?Aglets設計行為方式分析

  首先討論在Aglet系統里中的行為方式(Behaviour Pattern)。

  在Aglet系統中主要有3類行為方式:遷移方式、任務實現方式和交互方式。

  (1)遷移方式

  遷移是移動代理移動性體現的方式。在Aglets中它主要處理移動代理移動時產生的各種問題,如路由和通信質量。Aglets中有3種方式:

  ①Itinerary:負責到達目的地的路由,它維護著所有目的地的列表,定義路由策略,并能處理諸如目的地不存在等異常情況。

  ②Forwarding:提供發送所有的或者特定的代理到遠端機器的機制。

  ③Ticket:負責管理服務質量和權限等問題。

  (2)任務實現方式

  任務實現主要是把任務分解給不同的Agent去執行。Aglets中有2種方式:

  ①Master-Slave:一種基本的任務實現方式。允許主代理把任務委派給從代理,從代理移動到指定的目的地,從而完成任務。

 ?、赑lan:用工作流的方式進行策劃,讓多個任務順序或并行地在多個代理上執行。

  (3)交互方式

  Aglets中有5種提供Agent之間的交流通信的方式。

 ?、費eeting:提供一種方式讓二個或者多個Agent在指定的機器上運行和交互。從Agent的編程模型來看,Agent被派到會議地點的計算機與相關Agent進行交互。

 ?、贚ocker:存儲遷移暫時不需要的數據,以節省帶寬。

  ③Messenger:用一個信使Agent在需要交互的Agent之間進行通信。

  ④Facilitator:通過公共通信設施進行詢問通信。

 ?、軴rganized Group:提供有效的機制,組合不同的Agent到一個通信網絡中。這種通信機制使得一個任務可以劃分給多個移動Agent實施。

  Aglets中的應用主要在上述的行為方式下完成。上述的行為方式也決定了Aglets的類體系中的設計模式。Aglets的每一個行為方式所代表的類都是由一個或者多個模式設計而成的。例如:在AgletContext類中就體現了Singleton模式。

3?移動代理系統的設計模式

  幾乎所有面向對象的系統結構中,都會用到已知的模式或是已知模式的組合。下面介紹Aglets應用設計中幾種主要的模式。

  (1)Aglets對象結構中的模式

  Aglets中類的設定都能體現出一定的設計模式。下面是幾個明顯的模式應用的實例。

 ?、貾roxy模式:出于安全等因素的考慮,在Aglets中不能直接訪問Aglet對象,必須通過AgletProxy訪問,同時還使得Aglet的位置透明。這種模式被稱為Proxy的構造模式。

 ?、贛ediator模式:在Aglets中,各個Aglet之間的通信通過Message對象來實現。對于Message的實現和處理被封裝在Aglet的實現中。這種模式使通信顯得松散,實際上是一種Mediator模式的應用實例。

 ?、跾ingleton模式:Aglets中的AgletContext對象是一個全局的對象,封裝了系統功能。這樣的對象只能有一個全局實例,因此在Aglets中通過系統內部的一次實例化完成。這是一個Singleton模式的應用。

????④Bridge模式:FutureReply接口用來處理異步傳送的消息。它應用了一個Bridge的模式,這個模式使得FutureReply的接口和實現無關。

  (2)Aglets的行為方式中的模式

???? Aglets的行為方式都是多個模式的組合。下面分析Aglets中幾個具有代表意義的行為方式和結構方式中使用的模式。

  ①遷移方式:這里可以將遷移方式理解為Aglet對象中對Aglet平臺的一種遍歷。因此在這個設計中,Aglets實際上應用了Visitor模式。

  ②任務實現方式:通過Aglet實現任務,也就是Aglet功能的體現。Aglet的主-從任務方式體現在類結構中。這里的結構模式是一種Bridge模式,這種結構方式使得從代理可以不受主代理的限制,獨立地實現和替換。Plan的行為模式是一種Command模式,它構造一個任務列表。

 ?、劢换シ绞?主要是Message方式,應用了Mediator模式。這種模式使得對象之間形成松耦合關系。其他一些交互方式或多或少都是在Message基礎上實現的。

  (3)應用模式改進設計

  脫離應用而單純地描述模式會陷入一種誤區。實際上是否應用設計模式是根據設計對象的要求來定的,并且在設計的過程中逐漸加入模式的應用。在應用設計模式時,必須盡量根據現有的模式進行應用,而不是去發現新的模式。事實上發現新的模式在現有情況下是非常困難的。

  Aglets的設計總體來說是十分成功的。由于種種原因,本文并沒有對Aglets的設計模式作完整的分析。通過分析Aglets的主要設計模式可以得出這樣的結論:盡管是移動代理的系統,也仍然是在一個OO環境中的設計應用。因此,需要利用基于OO的設計方法來進行有關基于移動代理平臺的應用系統。從這一點來看,通過應用設計模式來改進應用框架體系設計顯得非常重要。

4? 結束語

  設計一個復雜系統時,設計模式非常重要。它可使設計者避免在同一類問題處理時耗費大量的精力去進行重復的思考。移動代理系統的特點決定了它是一個負責的多對象系統。在這樣的系統中,如何設計類和對象的結構、行為、創建等是非常重要的。在設計移動代理應用體現框架的時候,合理地分析和應用設計模式對于系統的整體性能和設計成本等都具有重要意義。

Aglets是一個較為成功的移動代理系統。分析Aglets的設計模式,理解移動代理的設計和應用都具有重要意義。在未來的工作中,清楚地知道選擇策略和設計的關系尤為重要。因此,需要繼續研究移動代理系統中的設計模式。

?

參考文獻

1? 張云勇.移動Agent及其應用.北京:清華大學出版社,2002

2? Gamma E,Helm R,Johnson R et al.設計模式:可復用面向對象軟件的基礎.北京:機械工業出版社,2000

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          男女激情久久| 亚洲免费观看在线观看| 亚洲综合视频一区| 亚洲国产美女久久久久| 女生裸体视频一区二区三区| 一本色道久久加勒比88综合| 欧美成人官网二区| 亚洲一区二区三区免费观看| 国产嫩草影院久久久久| 欧美偷拍一区二区| 狠狠色噜噜狠狠色综合久| 亚洲午夜成aⅴ人片| 韩国v欧美v日本v亚洲v| 激情婷婷亚洲| 国产精品看片资源| 欧美性猛交99久久久久99按摩| 一本色道久久综合| 亚洲欧洲精品一区二区三区不卡| 尤物网精品视频| 欧美久久一级| 亚洲欧洲精品一区| 精久久久久久| 国产精品xnxxcom| 亚洲精品欧美日韩专区| 久久久欧美精品| 亚洲欧洲在线观看| 久久av一区二区三区| 久久久久久久久久码影片| 欧美精品在线一区| 最新国产精品拍自在线播放| 国产精品视频最多的网站| 99re热这里只有精品视频| 亚洲激情自拍| 欧美日韩在线观看一区二区三区| 日韩午夜在线观看视频| 亚洲欧美日韩人成在线播放| 国产女主播视频一区二区| 香蕉久久精品日日躁夜夜躁| 久久久久久高潮国产精品视| 亚洲国产综合91精品麻豆| 欧美日韩国产另类不卡| 麻豆91精品| 国产麻豆日韩欧美久久| 亚洲福利一区| 欧美午夜三级| 亚洲视频一二三| 国产精品一区二区你懂得| 国产精品一区视频| 99国产精品99久久久久久| 欧美揉bbbbb揉bbbbb| 欧美日一区二区在线观看| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲日韩第九十九页| 欧美高清在线视频观看不卡| 国产麻豆精品theporn| 亚洲欧美日韩国产综合精品二区| 欧美成人黑人xx视频免费观看| 欧美日韩精品免费观看视频| 欧美一区二区在线视频| 国产精品99久久久久久宅男| 久久综合亚洲社区| 免费中文字幕日韩欧美| 久久精品色图| 国产一区二区三区精品欧美日韩一区二区三区| 国产精品女同互慰在线看| 久久综合亚州| 国产欧美日韩91| 日韩午夜电影在线观看| 久久久久91| 欧美精选午夜久久久乱码6080| 免费在线日韩av| 亚洲区在线播放| 久久精品亚洲国产奇米99| 久久精品免费观看| 国产一区二区三区四区在线观看| 在线精品一区| 欧美亚州韩日在线看免费版国语版| 亚洲电影下载| 一本色道久久| 99视频一区二区三区| 久久久www成人免费无遮挡大片| 亚洲区中文字幕| 美女露胸一区二区三区| 国产人妖伪娘一区91| 欧美日韩在线一区二区三区| 亚洲精品久久久久久一区二区| 一区二区免费看| 一本色道久久综合亚洲二区三区| 久久九九全国免费精品观看| 欧美成人精品高清在线播放| 国产日韩在线亚洲字幕中文| 欧美精品 日韩| 欧美午夜精品一区| 国产主播精品在线| 国产精品久久久久婷婷| 欧美精品1区2区3区| 国产精品永久免费在线| 在线成人激情| 国产自产高清不卡| 欧美激情第六页| 在线观看视频一区| av成人手机在线| 亚洲欧美成aⅴ人在线观看| 亚洲免费精彩视频| 欧美凹凸一区二区三区视频| 黄色工厂这里只有精品| 欧美伊人久久大香线蕉综合69| 亚洲无亚洲人成网站77777| 欧美精品在线视频| 在线观看av一区| 在线精品一区二区| 欧美色大人视频| 9人人澡人人爽人人精品| 国产日本欧美视频| 国产一区二区视频在线观看| 夜夜嗨av一区二区三区四季av| 日韩视频一区二区三区在线播放免费观看| 免费人成精品欧美精品| 国产精品久线观看视频| 欧美一级在线亚洲天堂| 亚洲国产精品一区二区久| 亚洲国产一区二区三区高清| 国内揄拍国内精品久久| 国产精品久久久久国产a级| 久久久久久**毛片大全| 亚洲高清不卡在线观看| 久久国产夜色精品鲁鲁99| 久久中文欧美| 欧美一区二区三区男人的天堂| 性欧美xxxx视频在线观看| 亚洲国产精品久久久| 国产精品成人播放| 欧美日韩在线第一页| 日韩午夜激情av| 欧美极品一区| 国产欧美日韩视频在线观看| 欧美午夜在线| 欧美在线视屏| 欧美日韩国产一区二区三区地区| 欧美精品粉嫩高潮一区二区| 欧美在现视频| 欧美日韩专区| 美女亚洲精品| 亚洲一区免费在线观看| 欧美在线观看网站| 欧美亚洲成人免费| 欧美激情一二三区| 国产精品影音先锋| 欧美一区二区日韩一区二区| 欧美精品一区二区三区蜜臀| 亚洲先锋成人| 亚洲欧美成人精品| 久久精品噜噜噜成人av农村| 最新国产の精品合集bt伙计| 亚洲愉拍自拍另类高清精品| 久久国产婷婷国产香蕉| 嫩模写真一区二区三区三州| 一本久久综合| 国产精品综合av一区二区国产馆| 在线观看日韩www视频免费| 国产日韩欧美亚洲一区| 欧美视频成人| 欧美在线网站| 国产欧美一区二区精品性色| 欧美一区二区日韩| 国产精品毛片一区二区三区| 亚洲精品色婷婷福利天堂| 亚洲美女黄色片| 久久一区二区三区国产精品| 免费不卡在线观看av| 国产精品免费福利| 久久久亚洲成人| 欧美aⅴ一区二区三区视频| 欧美xxxx在线观看| 欧美在线观看www| 国产在线不卡| 欧美日韩在线一区| 亚洲电影在线观看| 亚洲影视在线| 亚洲靠逼com| 欧美精品在线一区二区| 篠田优中文在线播放第一区| 一区二区三区日韩精品视频| 亚洲影院污污.| 亚洲精品中文字幕女同| 亚洲免费av电影| 亚洲经典三级| 一区二区三区在线免费观看| 国产亚洲激情| 欧美日韩国产首页| 91久久国产综合久久91精品网站| 亚洲日本在线视频观看| 亚洲电影在线播放| 欧美成人午夜激情在线| 欧美视频二区36p| 欧美日韩午夜激情| 精品成人a区在线观看| 亚洲电影免费观看高清| 亚洲欧美一区二区在线观看| 9久re热视频在线精品| 伊人成综合网伊人222| 国产乱人伦精品一区二区| 久久伊人精品天天| 亚洲午夜国产一区99re久久| 国产网站欧美日韩免费精品在线观看| 欧美激情亚洲激情| 久久久久久一区二区| 一区二区三区欧美成人| 免费欧美高清视频| 激情婷婷亚洲| 欧美精品v日韩精品v国产精品| 午夜精品成人在线视频| 欧美日韩一区二区三区四区在线观看| 在线观看av一区| 美女精品一区| 国产精品自拍小视频| 欧美成人蜜桃| 国产日韩免费| 国产精品人人爽人人做我的可爱| 日韩一级在线| 亚洲一区二区三区在线| 国产在线观看91精品一区| 久久久.com| 亚洲免费视频网站| 亚洲丁香婷深爱综合| 亚洲欧美另类久久久精品2019| 一区二区欧美在线| 久久久一区二区三区| 国产精品天天摸av网| 欧美视频专区一二在线观看| 国产精品99久久久久久www| 久久亚洲影音av资源网| 亚洲视频免费观看| 亚洲人成人一区二区三区| 国产精品美女久久久久久久| 欧美不卡激情三级在线观看| 久久一区视频| 欧美大片网址| 狠狠综合久久av一区二区小说| 黑人巨大精品欧美一区二区| 国产色婷婷国产综合在线理论片a| 欧美日韩高清一区| 久久成年人视频| 免费欧美网站| 亚洲激情综合| 国产免费观看久久| 亚洲人成网站影音先锋播放| 欧美在线free| 国产精品国产自产拍高清av王其| 91久久在线观看| 国产精品v欧美精品v日韩| 久久国产毛片| 国产综合色精品一区二区三区| 国产亚洲在线观看| 国产精品高潮呻吟久久| 午夜精品理论片| 亚洲欧美影音先锋| 国产精品女主播| 亚洲国产精品久久久久秋霞蜜臀| 永久域名在线精品| 久久久久国色av免费观看性色| 国产午夜精品一区理论片飘花| 国产精品美女久久福利网站| 欧美在线观看一区二区三区| 国产欧美日韩综合一区在线播放| 久久久久久一区二区| 久久青青草原一区二区| 裸体素人女欧美日韩| 欧美特黄一区| 久久漫画官网| 久久伊人一区二区| 欧美一区二区三区啪啪| 亚洲午夜精品视频| 亚洲精品精选| 欧美精品二区三区四区免费看视频| 欧美电影电视剧在线观看| 亚洲影院在线| 欧美成人综合网站| 亚洲欧洲综合另类在线| 欧美一区二区精品久久911| 欧美成人中文字幕在线| 亚洲国产成人91精品| 久久久噜噜噜久久人人看| 亚洲人成在线播放网站岛国| 国产精品久久一卡二卡| 欧美在线视频在线播放完整版免费观看| 欧美国产亚洲另类动漫| 另类亚洲自拍| 136国产福利精品导航网址应用| 久久人人超碰| 亚洲女同同性videoxma| 欧美一区二区在线免费播放| 国产精品99久久久久久有的能看| 亚洲大胆视频| 久久―日本道色综合久久| 欧美日韩中文字幕在线视频| 亚洲国产精品一区二区尤物区| 91久久久久久国产精品| 亚洲人www| 免费日韩成人| 欧美成人高清视频| 国内揄拍国内精品少妇国语| 欧美日韩免费视频| 国产日韩欧美日韩大片| 久久综合图片| 亚洲美女中文字幕| 亚洲国产欧美一区二区三区丁香婷| 国产精品永久免费| 91久久精品日日躁夜夜躁欧美| 在线电影院国产精品| 国内成人精品2018免费看| 欧美福利一区| 国产精品系列在线播放| 亚洲欧美日韩专区| 欧美日韩国产高清| 激情成人中文字幕| 日韩亚洲一区二区| 日韩视频在线一区二区三区| 国产精品一区二区三区观看| 国产欧美在线视频| 国产精品午夜在线观看| 国产精品免费福利| 国模精品一区二区三区| 欧美日韩在线视频一区二区| 99国产精品久久久久久久久久| 国产精品激情偷乱一区二区∴| 亚洲激情成人| 亚洲激情成人在线|