我是否需要一个用于机器对机器JavaRMI的web服务器?
我试图让两个Java进程通过RMI进行对话。2016年。在Java8上 我有一种感觉,事情已经开始了,但我是一个守旧的人,我想坚持简单的RMI。大多数在线文档都相当陈旧。其余部分在RMI框架的各种更改之间。我们目前有:-我是否需要一个用于机器对机器JavaRMI的web服务器?,java,rmi,Java,Rmi,我试图让两个Java进程通过RMI进行对话。2016年。在Java8上 我有一种感觉,事情已经开始了,但我是一个守旧的人,我想坚持简单的RMI。大多数在线文档都相当陈旧。其余部分在RMI框架的各种更改之间。我们目前有:- 通过rmic的原始存根/骨架方法 Java 4之后动态生成的存根 JDK 7 Update 21中对codebase参数的更改 在本文中提到HTTP/FTP服务器 我有一个client.class和一个server.class,它们分别位于不同的物理机器上。我不确定是否需要
- 通过rmic的原始存根/骨架方法
- Java 4之后动态生成的存根
- JDK 7 Update 21中对codebase参数的更改
- 在本文中提到HTTP/FTP服务器
/etc/hosts
文件就可以了
我有一个client.class和一个server.class,它们分别位于不同的物理层上
机器。我不确定是否需要运行独立的HTTP
服务器(如apachehttpd)提供存根文件供下载
由客户提供
编号。以上已给出说明
这难道不也是一个嘲笑,如果我
必须运行httpd吗?你会在网上提供哪些文件
目录它会是server.class的第二个副本吗
是否导出到RMI注册表
对于在网络中运行的简单客户机-服务器应用程序(简单的非web应用程序),不需要任何web目录
远程对象的存根充当远程对象的客户端本地代表或代理。调用方调用本地存根上的方法,该方法负责对远程对象执行方法调用。在远程JVM中,每个远程对象可能都有一个对应的框架(在仅Java 2平台的环境中,不需要框架)。骨架负责将调用分派到实际的远程对象实现。有关JavaRMI体系结构的详细信息,请阅读链接
无需下载额外文件即可实现此目的。您可以使用RMI,而无需使用代码库功能。这不是强制性的 它不仅提供对存根的访问,还提供对客户端可能不知道的任何其他服务器端类的访问:例如,如果指定了一个远程方法来返回接口或抽象类,则可以使用代码库特性来部署返回值的实际实现。这允许更新实现类,而无需大量的客户机部署问题。它应该被视为部署解决方案,而不是RMI的一个组成部分 我是一个守旧的人,我想坚持简单的RMI。大多数在线文档都相当陈旧 没有什么大的变化。1.5中的动态存根,1.7中的代码库调整,自1.2以来没有其他重大变化 我不确定是否需要运行独立的HTTP服务器(如ApacheHTTPD)来提供存根文件供客户端下载 你没有。见上文 这似乎是codebase参数的要点。这对我来说似乎也是多余的,尽管动态生成的存根文件不是由RMI注册表程序生成的 只有当您认为代码库特性仅适用于存根时,才可以使用它:请参见上文。您甚至可以将其反向使用,从客户端到服务器,用于接口的实现类或用作远程方法参数的抽象类 如果我必须运行httpd,这难道不是对拥有全Java解决方案的嘲弄吗 没有人说你必须运行HTTPD,甚至是HTTP服务器。例如,它可以是FTP。它可以是用Java实现的HTTP服务器。很多可能性。或者您根本无法使用该功能 您将从web主目录提供哪些文件?它是server.class的第二个副本吗 不,为什么?客户端不需要server.class 不是导出到RMI注册表的吗 这也不是server.class,而是存根 这一切似乎有点混乱 我不同意。您上面所做的任何猜测都不会出现在文档中 那么,机器对机器RMI需要web服务器吗
不需要。RMI不需要web服务器-我成功地完成了本教程的学习,但没有HTTP服务器@板球,听上去太棒了。在中称为“Web服务器”的黄色框是什么意思?那么,为什么在同一个示例中还说“类定义通常通过web服务器通过网络访问”?你可能是在同一台机器上做的吗?我在大学里做了一个实验。我是