动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.使用EJB 3.0简化企业级Java开发一.
.Tomcat连接池首次配置成功状态.
.通过Java如何实现AES密码算法.
.实例教程:Java Socket编程的一个.
.Java实现汉字转换为拼音.
.Java面试中的陷阱.
.配置J2EE(v1.4.02)和Cloudscap.
.全面认识JUnit 4的新特征.
.Java:Web应用下实现定时任务的简.
.Java、XML与数据库编程实践 (二).
.Java中文相关技术.
.Java中设计模式(2) Singleton模式.
.运用DBUnit进行高效的单元测试.
.利用JavaMail API编写邮件发关程.
.ReadLine 方法.
.Java EJB容器的存取和实现.
.Java套接字实现网络编程之基础篇.
.如何控制DataGrid里的内容换行与.
.Java应用数据库:Hibernate对多表.
.配置JBoss4JDBC连接.

认识JINI

发表日期:2008-1-5 |



  一、前言

长久以来许多工程师们,都一直期盼著一个超大型的计算系统,这系统是由网路上许多机器,从超大型主机乃至嵌入在某些设备上的微小晶片,彼此相互合作而成。所有的工作,都可以在任何时间被分散到网路上的任何地方、任何种类的机器上去处理。这样的系统有很好的弹性,并且可以藉由不断地更新设备,来解决更多问题。

然而,我们 要一致的语言,以及更强的通讯协定( superprotocols)等,让网路上众多繁杂的成员,能彼此顺利地沟通。但是就目前的情况,要达到这样的目的很难,因此我们可以考虑把一种非凡的程式码(genetic code)嵌入到许多软硬体之服务中,使得网路上的成员可以轻易的相互分享彼此资源,这就是 Jini 所要达成的目标 [1] 。

Jini 是由 SUN 公司 R&D 的Bill Joy 所提出的一项技术。我们可以藉著使用Jini,创造出一个富有弹性、轻易治理、且可随时随地使用各种服务的网路计算环境。为了让使用者知道网路上有哪些服务可被使用,我们必须建立一个联盟( federation ),让网路上的服务主动加入。当有某个服务加入联盟时,也等於同时向整个网路告知:「我可以被使用,有谁 要我的服务?」。使用者透过联盟,可以得知有哪些服务可以使用。然而,我们要如何才能很简单、很轻易地使用这些服务关於这个问题,也就是 Jini 的工作重点之一。

让我们来看看Jini 是怎堋做的。网路上的服务要能够成为联盟的一份子,不管是硬体服务也好、软体服务也好,都必须嵌入Jini 的程式码。此外,网路上还必须提供 JVM的环境,才能执行Jini程式以获得这些服务。Jini的程式码是利用 SUN 公司所提供的 Jini package 撰写而成。Jini package使用的语言是Java,并且包含了许多处理网路上资源的相关功能。例如:如何帮助网路服务寻找(discovery)、以及加入(join)联盟;或者帮助网路服务处理分散式的承租(leasing)、交易( transactions)等的问题。而这些网路服务彼此沟通时,所应用的技术是 RMI(Java Remote Method Invocation )。简言之,网路上的服务藉由 Jini 所提供的介面,得以相互沟通、合作,来完成使用者的要求。

二、体系结构

Jini system 是由基础建设( infrastrUCture)、程式设计模型( programming model )、服务( services) 三方面所构成。
基础建设( infrastructure)
Jini 基础建设的核心包含以下几个部分:

Discovery Protocol:
提供了如何让网路上任何种类的资源加入联盟的方式。

eXtended RMI :
Jini的元件彼此沟通时所使用的机制。

Distributed Security:
定义了Jini 联盟成员的使用权限。

Lookup Service:
用来展现联盟中的所有成员,以及帮助使用者寻找网路资源,或者负责提供联盟中的资源给使用者用。

程式设计模型( programming model )
Jini 提供一些分散式的程式设计模型,而 Jini 的基础构造,就是利用这些模型来组合。模型所提供的介面(Interface),包括以下几个类型:

Leasing Interface:
负责治理物件被使用的时间。

Two Phase Commit Interface :
是一个轻量级的(light-weight)、物件导向的( object-oriented)介面。负责治理分散式交易( transaction)的动作,如:roll back 、roll forward 等。

Events Interface:
在分散式计算的环境中,必须确保程式执行的先後顺序,利用事件的观念可以帮助我们解决这个问题。

服务(services)
有了Jini的架构以及程式设计模型後,我们可以利用这些技术来设计治理网路资源的服务,以促进分散式计算的发展。例如:JavASPaces、Two Phase Commit Manager。

三、JavaSpace

Jini提供了在分散式环境中寻找( look-up)、注册( registration)、租借(leasing)等功能。而 JavaSpaces则负责治理分散式物件的处理程序( processing)、分享(sharing)、以及流通(migration )等。因此 Jini 与 JavaSpaces 彼此存在著相互合作的关系[3] 。以军队作比喻, Jini扮演的是军 官的角色,负责分派许多武器装备给军队。JavaSpaces则扮演军队的角色,负则使用那些被分派的武器以执行命令。简单的说, JavaSpaces就似乎网路上的一个市场,它提供一个简单、快速、统一的介面,让网路上分散的资源可以被分享、协调与流通[4] 。

JavaSpaces是用 Java所发展的技术,并且以RMI实作其网路通讯的功能,一般应用在n-tiers 架构的中间层( middle tiers)[5] 。JavaSpaces虽然能提供 求者与供给者之间查询与沟通的机制,但它并不是资料库,而是以简单的messaging system为基础,进而提供更强大的功能。

除了Jini之外, JavaSpaces技术也可被应用在其它系统与服务中,如: Workflow systems 、Customer management systems、Supply chain management 、Intelligent rich data distribution、 Trading services 、Auction systems 、Resource allocation and management systems、Agent Systems、以及 Publish and subscribe services等[4] 。

四、应用

Jini技术有一个主要目的:让许多电子产品可以轻易的被加入至网路上,也就是随插即用(plug-and-play) [6] 。任何物件,如: DVD、CD 、VCR、桌上型电脑、可携式电脑、印表机、扫描器、磁碟机、播放器、电话、电视机、警报系统、医疗器材、空调系统、厨具、汽车引擎、汽车的丁器板等,只要利用Jini技术,就可以结合各类的电子产品成为网路上的资源服务[6] ,而使用者只 透过电话或无限通讯器材就能使用这些服务。

想像一个剧情:一个使用者坐在公园里,想要透过掌上型电脑来使用网路上的印表机,但是他并没有任何印表机的驱动程式。首先,Jini会启动 Lookup服务(类似 JavaSpaces),到联盟(federation )中搜寻符合使用者条件的印表机。找到之後,Jini会跟那台印表机沟通,取得它的驱动程式,并且传至使用者的掌上型电脑。使用者於是可以轻易的使用网路上的印表机。

我们也可以把家中的电器用品都结合到网路上,这样可以让我们在任何时间、任何地点来控制家里的电器,这将是多堋令人期待的一个理想。

目前已经有许多公司正在发展相关的技术,这些公司包括Axis、Canon、 Computer Associates、Datek 、Enocanto、Epson 、EriCsson、FedEx 、Mitsubishi、 Norwest Mortgage 、Novell、ODI、 Oki、Quantum、 Salomon Brother、 Seagate、以及 Toshiba等。

五、结论

Jini让许多电器设备、网路服务结成联盟( federation)。 Jini的最上层以 Lookup机制为基础的目录服务( Directory service ),让许多含有 Jini技术的资源,来注册以及被公布於网路上。下一层则利用JavaSpaces 技术来治理联盟的资源,以让使用者或其他应用程式使用资源。底层则是以RMI为基础的协定,用来规范物件之间在网路上的沟通。

如同SUN公司所说:「网路就是电脑(The network is the computer)」。网路的出现提供了无限的计算资源,让我们可望达成一个超大型的计算系统。Java技术使得分散式计算变得轻易可行,Jini 则实现网路就是一个超大型电脑的理想。
上一篇:人物专访: 畅销作家Harold《 Java I/O 》 人气:454
下一篇:如何编写Enterprise bean的客户端 人气:595
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-13 爬爬思特新闻管理系统 v2.0 Beta1
2008-10-13 Pligg v9.9.5 Beta
2008-10-13 广优邮件发送系统 v2.1
2008-10-13 缤纷互动视频交友 v3.1 RC
2008-10-13 MyShop网络商城 build 081005
2008-10-13 Chyrp 超轻量级开源博客引擎 v2.
2008-10-13 162100静态(论坛/文章)系统 v2.4
2008-10-13 金博人才招聘求职网黄金版 v4.2
2008-10-13 愚人笔记 v4.0
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号