软考软件设计师辅导:采用Java开发移动Agent系统

来源:微学教育网发布时间:2012-04-27

  1.Ge毗m1Mag5c公司的0dy85eloeneralMagic公司最早曾用Telescript作为移动Age血系统的专用开发语言开发过移动Age以系统。Telesc印:是基于c?*语言的,用它编写的移动Age则可以采用两种方式进行通信:若在同一主机上运行。Agem可以通过相互调用的方法进行通信:若在不同的主机上运行,A8em间需要先建立连接,然后才能互相传递可计算的移动对象。在Java语言出现以前,TeIescdpt作为一个比较成功的移动Age饥开发平台,具有很好的安全性、健壮性和执行效率,曾被开发人员广泛采用。在Telescr个中age队place和go是三个最基本的概念,同时也是最重要的概念。这三个术语组合在一起可用来描述移动代理最恰当的行为:

  代理到处走(9genugDplace)。

  随着Java技术的出现和其本身特性的逐渐完善,使得采用Java开发移动Agent系统变为可能,GeMeralMagic公司经过反复研究,最终成功开发出一个完全基于Java语言的移动A8e则系统0dyssey*Odys’ey不仅兼容了Telescript的许多功能,还继承了Telescript的许多优良特性v并刘一些典型的分布式技术如JavaRMI、MicMs.穴DcoM提供支持:

  目前,odys’ey作为成功的移动Age则开发平台,已经得到广泛的应用。要获得关于Odyssey更多的信息。可以访问hdp://www.genemlmagiccoWtechd010gy/techwhi2eFaPerhtmI.

  同时,General首先使用移动代理术语,并在t997年获得该专利。

  2.IDM公司的A8IetIBMJapan的Agl曰工作平台是最早基于Java的开发移动代理的工具之一。A2Iet的名字是由Age则和AFpte2组合而成,可以把它看成具有A8e川行为的APPI曰对象,同时Aglet也是基于Java的移动Age爪开发平台。AgIet以线程的形式在一台机器上产生,当需要使用它时可以随时暂停当前正在执行的任务,并将整个Aglet迁移到另一台机器k,然后可以继续执行尚未完成的任务。实际上,一个AgIet就是一个移动Java对象。它可以自动运行,并可以从一个基于Agl曰的主机移动到其他支持Agld的主机LoA9Iet不仅建立了一个移动Agem编程框架,而且还为移动Age财之间的通信提供了功态有效的交互机制和详细易用的安全机制,这一切都简化了移动Age则的开发。要了解更多AgleL工作台的信息,可以访问ht9://ww风kI.ibm’ojp/agl曰s;3.Retu『don公司的Voya2Grvoyager是一个纯粹基于Java的分布式计算平台,利用它可以快速生成性能较高的分布式应用系统,它也是能够代表当前技术水平的一个移动Agem开发的优秀平台vDyager同其他移动Agem系统相比具有的最大特点是:它完全依赖于Java语言。并旦既可以用来开发移动Agem系统,也可用来建立传统的分布式系统。同时,voyager也是当今最广泛使用的软件代理系统:关于Voy"g.r的更多内容。可以访问htV://Ww风响eclspace’om.

  3.D’AgentD’Age腻是支持多种语言(如TcL、Java等)的移动A9仍t系统,它是由美国Darm.uth大学研究开发的。D,Age鹏通过一个go指令可以在任意点终止当前执行的任务,并转移到其他环境中继续执行:D’Agent服务程序抛弃厂传统的多进程方式而采用多线程工作方式,虽然增大了实现难度,但是由于进程问通信大大减少,从而使系统的执行效率大大提高。

  4.D’Age则可以采用远程过程调用(RPc)和远程方法调用(RMl)等多种通信方式,并支持异步或同步通信c为了增强安全性,D,Age帆采用公钥系统以对Agenc访问的资源进行管理,并对Age朗可以访问的资源进行授权或加以限制。

  5.G『as5hope『Grassh.per也是移动Agem系统,是由IKV十十公司开发的。Grassh.per主要包括由专有的ORD(GrasshoperORB)连接的Age"cy和域注册器。Agency是Age航的实际运行环境;多个Agency构成域并由域注册器提供名字服务;0rassh.per有多种通倍方式,可以采用套节字Socket、温岭seoCORBA或JavaRMI进行通信,同时还支持同步或异步通倍、动态消息机制和多点发送,并具有很好的扩展性:此外,Grasshoper采用当今先进的信息安全技术以保证信息传递的可靠性、安全性,如采用数字签名以实现资源访问控制,采用x.509证书以实现身份认匠,采用ssL以保证信息的安全传输。