java rmi使用后的感想_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > java rmi使用后的感想

java rmi使用后的感想

 2014/4/19 3:39:47  店小二儿  程序员俱乐部  我要评论(0)
  • 摘要:由于我的程序设计中需要应用RMI所以这段时间对RMI进行了一下研究。写一些感想,对于什么是RMI之类的就省略了。下边连接是RMI的用法,需要的朋友可以看一看http://haolloyin.blog.51cto.com/1177454/332426我们这里介绍一下其中的一些小的知识,1.什么情况下用RMI由于RMI有显著的两个缺点,一个是性能,早在很久对于分布式java而引出的webservice和SOA等理念,RMI就被抛弃了,当然这不是绝对的,对于小的子程序来说RMI还是有他的作用的
  • 标签:使用 Java

???????由于我的程序设计中需要应用RMI 所以这段时间对RMI进行了一下研究。写一些感想, 对于什么是RMI之类的就省略了。

?

下边连接是RMI的用法,需要的朋友可以看一看http://haolloyin.blog.51cto.com/1177454/332426

?

我们这里介绍一下其中的一些小的知识,

1. 什么情况下用RMI

??? 由于RMI 有显著的两个缺点,

??? 一个是性能,早在很久对于分布式java而引出的webservice 和 SOA等理念,RMI就被抛弃了,当然这不是绝对的,对于小的子程序来说 RMI 还是有他的作用的。

??? 二是RMI的硬性要求就是 CS两端都必须是java,所以对于语言跟着需求走的我们来说,这个可能是最大的困扰。

??? 现在更多应用RMI的还是EJB 和 SPRING中的RMI

?

2. RMI中的存根与骨架

??? 这是一个很老的问题了,在现在的JDK版本中,已经把骨架整合了,完全不需要我们处理,至于存根,其实就是远程对象的本地引用,也就是本地通过 LocateRegistry中的 getRegistry 方法获取 远程主机中的注册表Registry,通过Registry对象的lookup找到远程对象的引用,我们在本地应用远程对象(实际是接口)中的方法来解决问题,这也是符合RMI的注册/服务的原则。

??? 当然,我们也可以用Naming来做这些操作,但所有的无非是 注册+得到注册;

?

3. Remote接口作用

??? 他完全是一个标记,类似io中的Serializable,起一个标记作用,告诉这是一个远程接口

?

4. UnicastRemoteObject这个类的作用

??? 做程序的时候总是想问这个是干嘛的为啥一定要用?结论是:他是一个解包,封包的作用,我们知道,网络传输数据再怎么说也是socket连接,而这个类就是对数据的进行封装的,例如传参数,得到返回值等等,当然还有其他的作用,没必要一一解说。

?

5. Naming和Registry中的相同的函数

??? 我们知道Registry是远程注册表,而Naming是Sun做出的对注册表的操作,他们的本质我不敢说一样(我没看太多的源码),但是操作的意义大致是一样的,所以没必要纠结用那一个。

?

我第一次写blog,所以有什么不对的请指出,也是对我学习的帮助,多谢..........

?

发表评论
用户名: 匿名