gpt4 book ai didi

2 个客户端之间的 Java 套接字本地连接 - 设计

转载 作者:行者123 更新时间:2023-12-01 14:50:20 24 4
gpt4 key购买 nike

我有一个应用程序,其中用户(客户端 #1)输入本地 IP 和端口,应用程序将图片发送到客户端 #2(也使用相同的应用程序)。然而,对于最终的应用程序,我不希望用户输入本地 IP,因为他们不会知道此信息,并且我希望我的程序自动弄清楚这一点。

我的第一个想法:本来我以为我可以扫描所有本地 ip 来查找开放端口,但这会花费太长时间。

我的第二个想法:我的下一个想法是让客户端将其本地主机名发送到远程服务器,然后远程服务器交换它们并将它们发送回客户端。

但是,我不想为我的第二个想法运行专用服务器。

因为这更多的是一个设计问题,所以我没有包含任何代码,但如果有必要我会这样做。

你们对我应该如何设计我的应用程序以自动找出本地 IP 有什么想法吗?

我确实尝试用谷歌搜索这个问题,但找不到解决方案,所以一个小时后我放弃了,只是把我的问题放在这里。

最佳答案

您可以使用类似 jgroups 的内容(允许基于多播[lan]等的发现)或一些peer-to-peer尽管后者至少需要一些服务器来进行初始发现。

原则上,客户端使用一些众所周知的地址向“世界”发送消息并等待某人回复。每个客户端本身同时等待这样的消息,并用如何“连接”到当前客户端的信息回复它。这可以通过所谓的黑板来完成,其中该 bb 是用于多播消息的特殊 tcp 地址(os/tcp 将消息发送到同时监听的所有客户端),或者是一个或多个接受并协调的服务器(种子)请求和“成员资格”列表。不管怎样,有一些工具;)

关于2 个客户端之间的 Java 套接字本地连接 - 设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14944528/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com