什么是RMI注册表?它有什么作用?什么是RMI注册表
回答
本质上,RMI注册表是服务器注册它提供的服务的地方,也是客户查询这些服务的场所。见Introduction to Java RMI。摘录:
图1显示了客户端在使用RMI时所做的连接。首先,客户端必须联系RMI注册中心,并请求服务的名称。开发人员B不会知道RMI服务的确切位置,但他知道足以联系开发人员A的注册表。这将指向他想要调用的服务的方向。
RMI注册表作为RMI服务器和客户端之间的代理。服务器将其服务注册到注册表中 - 因此RMI注册表可以充当许多服务器/服务的“目录”。客户端不需要知道单个服务器的位置,并且可以在RMI注册表中查找它所需的服务。注册表是一个命名目录,它向客户端返回适当的句柄以调用其上的方法。
谷歌周围,有很多关于RMI的信息可用。
首先,服务器将名称与RMI注册表中的远程对象相关联。当客户想要访问远程对象时,它会在注册表中按名称查找对象。然后,客户端可以在服务器上的远程对象上调用方法。
http://www8.cs.umu.se/education/examina/Rapporter/471App.pdf
Java的远程方法调用(RMI)注册本质上是一个目录服务。
远程对象注册表是引导程序命名服务,由同一主机上的RMI服务器用来将远程对象绑定到名称。本地和远程主机上的客户端可以查找远程对象并进行远程方法调用。(Documentation)
您可以使用RMI或JNDI使用rmi注册表远程绑定和查找对象。
这是一个众所周知的代理设计模式的用例。 RMI服务器在RMI注册表上注册对象(基本上是存根)。远程客户端查找这些存根并调用其上的方法。在场景的后面调用方法,它的参数被序列化并发送到具有实现的实际RMI服务器。 RMI服务器(骨架代码)反序列化请求调用实际方法,收集结果,将其反序列化并将其发送回客户端(存根)。存根反序列化结果并将其返回给调用此方法的代码。
- 1. NSIS:什么是注册表?
- 2. 找不到RMI注册表
- 3. 中央RMI注册表
- 4. 关闭rmi注册表
- 5. rmi注册问题
- 6. 什么是注册表类的目的?
- 7. 如何使用RMI注册表注册远程对象?
- 8. 使用单个RMI注册表
- 9. 如何快速检查RMI注册表?
- 10. 重启后RMI注册表为空
- 11. Java RMI无法连接到注册表
- 12. RMI注册表失败....异常sais null
- 13. 什么是GCM注册ID?
- 14. 什么是注册前缀?
- 15. 什么是注册%eiz?
- 16. JUnit和RMI应用程序的最佳实践,RMI注册表
- 17. RMI注册表和RMI服务器是否有不同的端口号?
- 18. 注册表和注册表配置单元有什么区别
- 19. RMI中的rmic是什么?
- 20. 什么是RMI TCP连接
- 21. 什么是Java中的注册?
- 22. 注册状态是什么意思?
- 23. EaselJS中的注册点是什么?
- 24. RAX注册名称是什么?
- 25. 什么是创造登录/注册
- 26. 什么谷歌注册编号是
- 27. DLL和注册表有什么问题?
- 28. 什么?意味着在注册表值?
- 29. 注册RMI客户端导致IllegalArgumentException
- 30. 使用rmi注册表确定java rmi远程对象主机的IP地址
这里也是一个有趣的地方了解更多关于Java RMI:http://docs.oracle.com/javase/tutorial/rmi/index.html – LuckyLuc 2013-10-26 20:05:01
@LuckyLuc同意。不仅是一个有趣的地方,而且是一个更好的地方。任何互联网垃圾不应该在官方引用之前引用,当然也不要超过RMI规范等规范引用。 – EJP 2015-09-12 10:06:56
因此,每个程序只有一个RMI注册表,但可以有多个服务器。那是对的吗? – CodyBugstein 2015-10-01 03:46:41