发表于: 2017-02-18 23:35:53

2 1831


一、今天完成的任务

1.学习Redies安装windowsUbuntuRedies

下载地址:https://github.com/MSOpenTech/redis/releases

Ubuntu:

添加jar包:

参考:http://blog.csdn.net/evankaka/article/details/50396325

http://layou.iteye.com/blog/2273980

2.看了一下《网络教程》

调用对象方法时捕获RemoteException异常

所有的Java简单类型都可以串行化,非远程Java对象只有实现了java.io.Serializable接口时才可以串行化。实现了Serializable的基本Java类型包括StringComponent.

远程对象和本地对象的根本区别:远程对象驻留在不同的虚拟机中。

RMI的目标:允许程序向方法传递参数及返回方法的值。只需要调用远程方法抛出异常

桩:实现了远程对象的接口



服务器端总被认为是远程,而客户端总是被人认为是本地这要站在不同的角度考虑。

Java.rmi.Remote是一个标记接口,没有任何方法唯一目的就是标记远程对象。

public class UnicastRemoteObject extends RemoteServer

提供了很多支持远程的方法。

Naming类:要与运行在服务器上的注册表是对话。

3.完成一个小demo,HelloWorld

(1)新建一个继承remote

(2)再来一个继承的UnicatstRemoteObject的实现类

(3)然后将实现类的实例注册到RMI的注册表中

(4)最后从注册表中拿到实例

3.Spring集成RMI(好处) 

可以将上面的小demo改一下

(1)  新建一个接口,无需继承Remote

(2)  写实现类,无需继承UnicastRemoteObject

(3)  配置注册表的信息(server.xml

(4)  写一个启动的server的方法

(5)  Server端写完在写Client端,先从注册表中拿注册实例的配置文件client.xml

(6)  写一个main方法拿到实例

注:Spring整合了JavaRMI,些接口的时候不需要继承Remote,实现类不用继承UnicastRemoteObject

参考:http://blog.csdn.net/shirdrn/article/details/6359254

 二、收获

1.当集成memcach时可以看到性能的提升,而集成Nginx效果不明显

2.当集成redis的时候因为spring配置文件不在同一个文件夹下,所以报错

local改为bean

强制类型转换

三、遇到的问题

Memcache转换成redies还是蒙,等做完任务9后再回头看看。

四、明天计划

  • 1.将原有学员系统中Service中拆分出来,变成一个RMI的Service。
  • 2.在原来的WEB中调用Service。
  • 3.部署两台Service,在WEB中随机访问任意一台Service。
  • 4.部署两台WEB,通过Nginx配置两台WEB随机访问,两台WEB可以随机访问两台Service。



返回列表 返回列表
评论

    分享到