亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 0090.htm

?? 關(guān)于java的開發(fā)文檔
?? HTM
字號(hào):
<html>

<head>
<title>新時(shí)代軟件教程:操作系統(tǒng) 主頁(yè)制作 服務(wù)器 設(shè)計(jì)軟件 網(wǎng)絡(luò)技術(shù) 編程語(yǔ)言 文字編輯</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋體}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1  {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
    <p align="center"><big><strong>Aglet(Mobile Agent) </strong></big></p>

<div align="right">---(文/王靜翊)</div>

<TABLE width="90%">
  <TBODY>
  <TR>
    <TD class=page><A name=one>一、簡(jiǎn)介</A> <BR>
      <P>在分散式計(jì)算的 域中,有許多解決不同問(wèn)題的技術(shù),像是我們可以透過(guò) RPC或RMI來(lái)使用固定在遠(yuǎn)端工作站上的函式,并且藉由訊息傳遞( 
      message-passing)的方式來(lái)傳送資料,以協(xié)調(diào)整個(gè)分散式計(jì)算;也可以利用mobile agents的特性 - 
      穿梭在網(wǎng)路許多工作站并執(zhí)行各種特定任務(wù),來(lái)做搜尋遠(yuǎn)端工作站上的目錄資訊、更新檔案、計(jì)算統(tǒng)計(jì)資料、或者與其他 
      agents溝通等工作。目前關(guān)於發(fā)展後者mobile agents系統(tǒng)的開發(fā)平臺(tái)或執(zhí)行環(huán)境有 Telescript、Agent 
      Tcl、Ara(Agents for Remote Access )、以及Aglet等。 </P>
      <P>Aglet是由日本IBM 公司所提出,完全用Java發(fā)展的 mobile agent技術(shù),并提供實(shí)用的平臺(tái)-Aglets 
      Workbench讓我們開發(fā)或執(zhí)行mobile agent系統(tǒng)。 Aglet 這個(gè)字是由"agile" 
      與"applet"兩個(gè)字所合成的,簡(jiǎn)單的說(shuō)就是具有agent行為的Java applet物件。它以執(zhí)行緒( 
      thread)的型態(tài)被產(chǎn)生於一臺(tái)工作站,可隨時(shí)暫停執(zhí)行的工作,而後整個(gè) aglet物件被分派到另一臺(tái)工作站上,再重新啟動(dòng)執(zhí)行任務(wù)。也因?yàn)閍glets 
      是執(zhí)行緒的型態(tài),所以不會(huì)消耗太多的系統(tǒng)資源。以下將為讀者介紹Aglet 的系統(tǒng)架構(gòu)、Aglet 的物件模型( object model)與 
      packages、以及 Aglets Workbench 的元件。 </P><A name=two>二、架構(gòu)</A> <BR>
      <P>Aglets的系統(tǒng)架構(gòu)主要分為四個(gè)階段,請(qǐng)參見圖1。首先當(dāng)一個(gè)正在執(zhí)行的 aglet想要將自己外送到遠(yuǎn)端時(shí),會(huì)對(duì) Aglets 
      Runtime層發(fā)出請(qǐng)求,然後 Aglets Runtime層把a(bǔ)glet 的狀態(tài)資訊與程式碼轉(zhuǎn)成序列化(serialized )之位元組陣列( 
      byte array );接著若是外送的請(qǐng)求成功時(shí),系統(tǒng)會(huì)將 aglet的執(zhí)行動(dòng)作結(jié)束,然後將位元組陣列傳送至ATCI( Agent 
      Transport and Communication Interface)層處理,此層提供使用ATP (Agent Transfer 
      Protocol)的介面,其中ATP為一個(gè)簡(jiǎn)單的應(yīng)用層協(xié)定 ( application-level 
      protocol)(請(qǐng)參見圖2),它使得我們不 顧慮aglets是否被派送到不同的 agent系統(tǒng)就可以傳送aglets(也就是 
      agent-system-inde pendent);之後,系統(tǒng)會(huì)將位元組陣列附上相關(guān)的系統(tǒng)資訊,像是系統(tǒng)名稱以及aglet的id等,并以bit 
      stream 透過(guò)網(wǎng)路傳至遠(yuǎn)端工作站[1] 。 </P>
      <TABLE>
        <TBODY>
        <TR>
          <TD><IMG src="images/aglet_f1.gif"> </TD></TR>
        <TR>
          <TD>
            <CENTER>圖一、 Aglet的系統(tǒng)架構(gòu)下圖</CENTER></TD></TR></TBODY></TABLE>
      <TABLE>
        <TBODY>
        <TR>
          <TD><IMG src="images/aglet_f2.gif"> </TD></TR>
        <TR>
          <TD>
            <CENTER>圖 2. ATP 的示意圖</CENTER></TD></TR></TBODY></TABLE><A 
      name=three>三、API包說(shuō)明</A> <BR>
      <P>Aglet系統(tǒng)首先 提供一個(gè)「環(huán)境」( context)來(lái)管理 aglet的基本行為:像是「產(chǎn)生」( 
      create)、「復(fù)制」(clone)aglets ,或「分派」( dispatch)aglets 
      到遠(yuǎn)端工作站、「召回」(retract)遠(yuǎn)端的aglets,或「暫?!梗?deactive)、「喚醒」(active) 
      aglets,以及「移除」(dispose) aglets等,請(qǐng)參見圖 3。而aglet與aglet 之間的溝通,可用訊息傳遞的方式來(lái)傳遞訊息物件( 
      message object)。此外,基於安全上的顧慮,aglets 并非讓外界直接存取其資訊,而是透過(guò)一個(gè)代理者( aglet 
      proxy)提供一致的介面與外界溝通,請(qǐng)參見圖4。這樣做還有一個(gè)好處 - aglet的所在位置會(huì)透明化( location 
      transparency),也就是若想要與遠(yuǎn)端的aglet溝通時(shí),只 在本地主機(jī)( local host)的 
      context上產(chǎn)生對(duì)應(yīng)遠(yuǎn)端aglet的代理者,并與此代理者溝通即可,不必直接處理網(wǎng)路連線與通訊的問(wèn)題[1] 。 </P>
      <TABLE>
        <TBODY>
        <TR>
          <TD><IMG src="images/aglet_f3.gif"> </TD></TR>
        <TR>
          <TD>
            <CENTER>圖 3. Aglet的物件模型 </CENTER></TD></TR></TBODY></TABLE>
      <TABLE>
        <TBODY>
        <TR>
          <TD><IMG src="images/aglet_f4.gif"> </TD></TR>
        <TR>
          <TD>
            <CENTER>圖4. Aglet 基本功能介面</CENTER></TD></TR></TBODY></TABLE>
      <P>Aglet的packets包括如下: </P>
      <UL>
        <LI>com.ibm.aglet:這個(gè)packet定義aglet 的基本元件之類別:Aglet、AgletID 、AgletInfo、 
        AgletStub、 FutureReply、 Message、ReplySet ,以及介面: AgletContext、 
        AgletProxy、 MessageManager。 </LI></UL>
      <UL>
        <LI>com.ibm.aglet.eve nt:Aglet的事件驅(qū)動(dòng)模式分成Clone、 Mobility、 
        Persistency三種,其中Clone事件產(chǎn)生於復(fù)制aglets, Mobility事件產(chǎn)生於分派或取回 aglets等, 
        Persistency事件產(chǎn)生於暫停或喚醒 aglets。 </LI></UL>
      <UL>
        <LI>com.ibm.aglet.sys tem:主要提供控制 context的介面。 </LI></UL>
      <UL>
        <LI>com.ibm.aglet.uti l:包括一些常用的物件,像是 AddressBook、 AddressChooser、 
        ImageData等。 </LI></UL>
      <UL>
        <LI>com.ibm.agletx.pa tterns:將常用的系統(tǒng)架構(gòu)design patterns,例如 Master-Slave、 
        Messenger-Receive r、以及 Notifier-Notifica tion。 </LI></UL><A 
      name=four>四、Aglets Workbench</A> <BR>
      <P>Aglets Workbench 目前提供的元件包括如下[2] : </P>
      <UL>
        <LI>The Aglets Framework for mobile Java agents: 提供一些特定的mobile 
        agent之元件,以及常用的設(shè)計(jì)架構(gòu)。 </LI></UL>
      <UL>
        <LI>The Agent Transfer Protocol (ATP) </LI></UL>
      <UL>
        <LI>JDBC for DB2 </LI></UL>
      <UL>
        <LI>Tahiti: 視覺化的管理介面,讓使用者更方便管理 aglets。 </LI></UL>
      <UL>
        <LI>Fiji: 它是獨(dú)立的 package,提供在 web上透過(guò)Fiji applets來(lái)執(zhí)行 aglet 
        contexts,以做到產(chǎn)生、分派、召回aglets的功能。 </LI></UL><A name=five>五、范例說(shuō)明</A> <BR>
      <P>在此列舉一簡(jiǎn)單之范例(請(qǐng)參見圖 5、表 1、表 2):我們?cè)诒镜毓ぷ髡旧袭a(chǎn)生一個(gè)LocalHost aglet,此aglet會(huì)動(dòng)態(tài)產(chǎn)生一個(gè)新的 
      Hello aglet,然後將Hello aglet派送到遠(yuǎn)端工作站上執(zhí)行,也就是列印 "Hello!"訊息。 </P>
      <P>首先說(shuō)明LocalHost aglet: 在此程式中只有run()這個(gè)成員函數(shù),是此aglet 
      執(zhí)行緒本身進(jìn)入執(zhí)行狀態(tài)的進(jìn)入點(diǎn)。接著為了要?jiǎng)討B(tài)產(chǎn)生一個(gè)新的aglet,必須透過(guò) AgletContext來(lái)產(chǎn)生,并傳回新的 
      aglet之proxy。然後透過(guò)proxy將新的 aglet派送到指定的遠(yuǎn)端工作站。 </P>
      <P>然後是Hello aglet : 在這個(gè)程式中有 run()和 onCreation()兩個(gè)成員函數(shù),其中 
      onCreation()會(huì)在本身aglet產(chǎn)生時(shí)被執(zhí)行,先做一些初始化的動(dòng)作,在此加入 MobilityListener( )這個(gè)介面,當(dāng)有 
      Mobility事件發(fā)生時(shí),即會(huì)執(zhí)行適當(dāng)?shù)姆椒ǎ╩ethod)。也就是說(shuō),若此 Hello aglet被分派時(shí), MobilityListener( 
      )會(huì)收到系統(tǒng)產(chǎn)生的 Mobility事件,然後執(zhí)行 
      onDispatching()。接著進(jìn)入run()函式,首先用一個(gè)布林變數(shù)判斷本身是否在本地主機(jī)上。若不是則會(huì)印出" Hello!"訊息。 </P>
      <TABLE>
        <TBODY>
        <TR>
          <TD><IMG src="images/aglet_f5.gif"> </TD></TR>
        <TR>
          <TD>
            <CENTER>圖 5. 范例程式的作用關(guān)系圖</CENTER></TD></TR></TBODY></TABLE><BR><BR><B>表 1. 
      LocalHost.java</B> <BR><BR>
      <P align=center>
      <TABLE width="90%">
        <TBODY>
        <TR>
          <TD class=page><PRE>

import com.ibm.aglet.*;

import java.net.*;

public class LocalHost extends Aglet{

	public void run(){
		URL codeBase;	//被create的aglet之class path。
		Object init;	//傳給被create的aglet之初始物件參數(shù)。

	  try{
		// Create Hello aglet并取得其proxy。
		AgletProxy proxy = getAgletContext().createAglet(codeBase,"Hello",init);

	    try{
		proxy.dispatch(new URL("atp://remotehost"));	
		// 分派aglet到遠(yuǎn)端的主機(jī)。
	  } 
     catch(MalformedURLException e){
	     System.out.println(e);	
		 }
	  } 
      catch(Exception e){}

	}
}
</PRE></TD></TR></TBODY></TABLE></P><PRE></PRE><BR><BR><BR><B>表 2. Hello.java</B> <BR><BR>
      <P align=center>
      <TABLE width="90%">
        <TBODY>
        <TR>
          <TD class=page><PRE>
import com.ibm.aglet.*;

import java.net.*;

public class LocalHost extends Aglet{

	public void run(){

	   URL codeBase;	//被create的aglet之class path。
       Object init;	//傳給被create的aglet之初始物件參數(shù)。

	   try{
		// Create Hello aglet并取得其proxy。

		AgletProxy proxy = getAgletContext().createAglet(codeBase,"Hello",init);

    	try{
		proxy.dispatch(new URL("atp://remotehost"));	// 分派aglet到遠(yuǎn)端的主機(jī)。
	  }catch(MalformedURLException e){
	    System.out.println(e);
		}
	  }catch(Exception e){}
	}
}
</PRE></TD></TR></TBODY></TABLE></P><PRE></PRE><A name=six>六、參考資料</A> 
      <DL>
        <DT>
        <DD><A name=1>[1]</A> Mitsuru Oshima and Guenter Karjoth, "Aglets 
        Specification (1. 0)," <A 
        href="../../www.trl.ibm.co.jp/aglets/spec_version10.html">http://www.trl.ibm.co.jp/aglets/spec_version10.html</A>, 
        May 20th, 1997. 
        <DD><A name=2>[2]</A> Danny B. Lange and Daniel T. Chang," IBM Aglets 
        Workbench White Paper," <A 
        href="../../aglets.trl.ibm.co.jp/documentation.html">http://aglets.trl.ibm.co.jp/documentation.html</A> 
        , September 9, 1996. 
        <DD><A name=3>[3]</A> Chong Xu and Dongbin Tao, "Building Distributed 
        Application with Aglet," <A 
        href="../../www.cs.duke.edu/~chong/aglet/default.htm">http://www.cs.duke.edu/~chong/aglet/</A>, 
        1997. 
        <DD><A name=4>[4]</A> Danny B. Lange and Mitsuru Oshima, "Programming 
        and Deploying Java Mobile Agents with Aglets," ISBN: 0-201-32582-9, 
        1998. </DD></DL></TD></TR></TBODY></TABLE>

  </table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲成av人片在线观看无码| 成人app网站| 91精品福利在线一区二区三区 | 欧美日韩精品一二三区| 亚洲精品高清视频在线观看| 色婷婷精品久久二区二区蜜臂av | 国产精品夜夜嗨| 中文字幕一区二区视频| 色婷婷综合五月| 午夜电影一区二区三区| 精品国产sm最大网站免费看| 国产一区二区三区av电影| 国产欧美日本一区视频| www.成人网.com| 亚洲超碰精品一区二区| 日韩欧美国产综合| 成人黄色电影在线| 亚洲福利视频一区| 精品国产乱码91久久久久久网站| 国产一区二区美女诱惑| 中文字幕色av一区二区三区| 欧美年轻男男videosbes| 久久成人久久鬼色| 亚洲欧美经典视频| 日韩精品一区二区三区swag| 成人av手机在线观看| 亚洲国产精品一区二区www在线| 精品国产自在久精品国产| 成人免费高清视频在线观看| 亚洲影院久久精品| 国产欧美一区二区三区鸳鸯浴| 欧美性视频一区二区三区| 久久99国产精品久久99| 一区二区三区蜜桃| 2021中文字幕一区亚洲| 欧美熟乱第一页| 国产精品一区二区91| 天天综合网天天综合色| 国产精品久久久久aaaa樱花 | 日韩欧美在线网站| 91天堂素人约啪| 久久爱www久久做| 一区二区三区在线观看视频| 精品av久久707| 欧美日韩一区二区在线视频| 成人动漫精品一区二区| 捆绑变态av一区二区三区| 亚洲综合激情网| 国产精品三级在线观看| 日韩一区二区在线观看视频播放| 97se亚洲国产综合自在线不卡| 看片网站欧美日韩| 午夜免费欧美电影| 亚洲免费伊人电影| 国产精品久久久久久一区二区三区| 欧美一级黄色大片| 欧美精品自拍偷拍| 日本高清不卡在线观看| 成人免费高清在线观看| 国产精品888| 国产一区二区不卡在线| 免费观看一级欧美片| 亚洲二区视频在线| 一区二区三区四区不卡视频 | 国产亚洲午夜高清国产拍精品| 4438x成人网最大色成网站| 日本黄色一区二区| 99久久精品国产毛片| 成人高清免费在线播放| 国产91精品一区二区| 国内精品伊人久久久久av一坑| 蜜桃一区二区三区在线观看| 日本不卡视频在线观看| 首页综合国产亚洲丝袜| 亚洲国产精品久久久久婷婷884 | 1024国产精品| 亚洲图片欧美激情| 亚洲区小说区图片区qvod| 中文字幕在线视频一区| 国产精品乱人伦| 国产精品久久国产精麻豆99网站 | 亚洲男女毛片无遮挡| 国产精品成人免费在线| 国产精品久久99| 亚洲三级免费观看| 亚洲专区一二三| 天天色 色综合| 美国av一区二区| 国产在线精品一区二区| 国产精品99久久久久久久女警 | 中文字幕在线不卡视频| 亚洲欧美日韩综合aⅴ视频| 亚洲精品久久久蜜桃| 天堂影院一区二区| 老鸭窝一区二区久久精品| 国产麻豆日韩欧美久久| 成人污视频在线观看| 91在线视频网址| 欧美日本乱大交xxxxx| 精品免费国产二区三区| 日本一区二区视频在线| 亚洲一区二区中文在线| 美女免费视频一区| 成人一区二区视频| 欧美日韩一区二区欧美激情| 欧美一区二区三区日韩视频| 久久婷婷色综合| 亚洲人成人一区二区在线观看| 亚洲一区二区视频| 黄页视频在线91| 色综合久久九月婷婷色综合| 在线观看免费视频综合| 久久青草欧美一区二区三区| 最近日韩中文字幕| 免费在线观看成人| 99久久婷婷国产综合精品电影| 538在线一区二区精品国产| 国产欧美一区二区三区鸳鸯浴| 一区二区日韩电影| 国产一本一道久久香蕉| 欧美丝袜丝交足nylons图片| 国产亚洲午夜高清国产拍精品 | 亚洲美女在线一区| 另类成人小视频在线| 94-欧美-setu| 精品国产乱码久久久久久久| 亚洲精品国产精品乱码不99| 国产在线视频精品一区| 欧美日韩中字一区| 国产精品拍天天在线| 蜜桃久久av一区| 欧美中文字幕一二三区视频| 欧美激情综合在线| 欧美96一区二区免费视频| 91麻豆免费看| 中文在线一区二区| 美女视频网站久久| 欧美日韩激情一区| 亚洲免费av在线| kk眼镜猥琐国模调教系列一区二区| 欧美不卡一区二区三区四区| 亚洲一区二区三区四区五区中文| 国产不卡在线播放| 久久综合久久综合九色| 亚洲va欧美va人人爽| 91免费国产在线| 国产精品动漫网站| 国产精品99久久久久久宅男| 欧美videos中文字幕| 日韩 欧美一区二区三区| 在线观看一区日韩| 亚洲欧美日韩中文播放| 不卡免费追剧大全电视剧网站| 久久蜜臀中文字幕| 国产一区二区主播在线| 日韩一区二区中文字幕| 日韩高清不卡一区二区| 精品视频999| 亚洲成人午夜电影| 欧美三级在线视频| 亚洲午夜久久久久久久久电影院 | 国产专区综合网| 日韩美女一区二区三区| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美顶级少妇做爰| 日日摸夜夜添夜夜添国产精品| 在线精品观看国产| 亚洲综合激情小说| 欧美日韩国产免费| 日日噜噜夜夜狠狠视频欧美人| 欧美日韩一级视频| 青青草国产精品97视觉盛宴| 337p亚洲精品色噜噜噜| 麻豆91精品视频| 久久免费美女视频| 波多野结衣的一区二区三区| 中文字幕一区二区三区在线播放 | 激情综合网av| 久久精品人人爽人人爽| 国产成人午夜电影网| 国产精品蜜臀av| 91在线视频免费观看| 亚洲第一主播视频| 欧美一区二区三区免费在线看| 欧美aa在线视频| 欧美激情综合网| 色国产精品一区在线观看| 亚洲一区在线观看免费 | 国产精品一区二区你懂的| 久久久国产精华| 成人国产精品免费网站| 中文字幕精品综合| 99久久精品国产毛片| 亚洲成av人片在线| 久久婷婷色综合| av日韩在线网站| 日韩电影在线免费观看| 精品国产凹凸成av人导航| 国产亚洲精品免费| a在线欧美一区|