写在前面
这里仅给出spring-remoting实现rmi的方法和遇到问题的解决方法、集群化的方法。(该篇均来自网络,算是一个聚合)
spring-remoting实现rmi调用
实现的说明可以参见:http://blog.csdn.net/shirdrn/article/details/6359254
我做了一个demo,可以从这里下载:http://download.csdn.net/detail/buqutianya/9455054
遇到问题的解决方法
rmi中遇到的问题,这篇总结的比较全面了:http://blog.csdn.net/edward_qing_lee/article/details/24391603
其中的第二条上文说的不是特别明白,可以参见另外一篇:http://my.oschina.net/mutianya/blog/183899
第二条的第2、3两种种方法试验没有成功,后续会再试试。
rmi实现集群化
rmi实现集群化这里有一个方法使用的是cluster4spring,参见:http://blog.csdn.net/xymyeah/article/details/6195497
采用的是客户端均衡的方式,另外还有一个spring-remoting-cluster,后续希望能够对两种方式进行比较和评判。
另外,就是dubbo方案实现rmi的集群化管理。
spring+rmi的实现
这里给出一个可以部署在两台不同机器上的完整实现,解决服务器多ip时的链接拒绝采用的是http://blog.csdn.net/edward_qing_lee/article/details/24391603中提到的第一种方法。
其中设置java.rmi.server.hostname使用的是ServletContextListener。设置该属性的代码如下:
package cn.com.nggirl.rmi.server;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class BaseLoader implements ServletContextListener {
public void contextDestroyed(ServletContextEvent arg0) {
// TODO Auto-generated method stub
}
public void contextInitialized(ServletContextEvent arg0) {
System.setProperty("java.rmi.server.hostname" , "192.168.10.179" );
}
}
可以到这里直接下载:http://download.csdn.net/detail/buqutianya/9455054