Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:套接字还是RMI?_Java_Sockets_Client Server_Rmi - Fatal编程技术网

Java:套接字还是RMI?

Java:套接字还是RMI?,java,sockets,client-server,rmi,Java,Sockets,Client Server,Rmi,我需要将我们的应用程序分为轻量级gui应用程序和业务逻辑应用程序。这不是客户机/服务器设置,因为“服务器”组件只有一个客户机 应用程序中的另一个限制是它只有一个入口/出口点。因此,如果我们使用RMI,它将只在一个函数上。所有表单数据都已包装成字符串并通过一个传输区域传递 我应该仅仅使用Java套接字来增强这个应用程序,还是使用RMI?还是其他Java技术 我以前写过一篇文章,概述了我们的应用程序的要求,但没有得到答复 干杯。由于您的协议已经非常简单(您只需传递一个字符串),我建议您使用套接字。

我需要将我们的应用程序分为轻量级gui应用程序和业务逻辑应用程序。这不是客户机/服务器设置,因为“服务器”组件只有一个客户机

应用程序中的另一个限制是它只有一个入口/出口点。因此,如果我们使用RMI,它将只在一个函数上。所有表单数据都已包装成字符串并通过一个传输区域传递

我应该仅仅使用Java套接字来增强这个应用程序,还是使用RMI?还是其他Java技术

我以前写过一篇文章,概述了我们的应用程序的要求,但没有得到答复


干杯。

由于您的协议已经非常简单(您只需传递一个字符串),我建议您使用套接字。
例如,这样做的好处是,您不会在两端都与Java绑定,可以轻松地将UI切换到另一种语言。

就个人而言,如果您只需要调用一个方法,并且您的所有数据都已包装在一个字符串中,那么RMI似乎有点过火了。我想一个简单的套接字服务器就足以满足您的需要。然而,RMI确实免费提供了很多东西,比如多线程、分布式垃圾收集、对象编组等。然而,如果您只有一个客户端,那么多线程可能没有什么用处,因为您正在进行自己的对象编组,那么这些好处可能不会给您带来任何好处


<>这里有一个关于RMI能力的好页面:

您可以考虑将服务器入口点封装为servlet,并从客户端执行一个帖子。 做过使用原始套接字进行通信、使用RMI和SOAP的应用程序之后,使用RMI是最容易的(只需一点点),但是你必须在所有事情上都使用Java。RMI之所以最简单,关键在于它确保发送整个消息,并包含一个基本的发现框架,但它没有SOAP的复杂性(比上面列出的所有内容都复杂得多)。

我想你自己已经回答了这个问题。如果它是轻量级的、单用户的,并且您对RMI很满意,那么您应该使用它。@paxdiablo可能重复?:)用一个没有答案的问题来结束这一切似乎很糟糕。最好是关闭这一个,然后在这里编辑任何有用的内容到这个问题中。谢谢大家的回答。当办公室里没有其他人回答这些问题时,Stackoverflow是一个很好的资源。我得到的只是“什么是RMI?”。干杯,我就是这么想的。保持简单,或者使用RMI,然后再利用它的其他特性。我仍然不确定,但我只是想确保没有其他我不知道的框架/API。干杯。是的,负责编组和解编。唯一的缺点是,我们需要Web服务器。