基本上我想建立一个如下网络
1.Server
其他3个客户端。使用java.net包的Socket和Server套接字类我制作了Server程序和客户端程序。服务器和客户端之间有双向通信链接。 这里很酷,但我的目的是在这些客户之间创建一个通信链接。但我怎么能这样做。 欢迎任何建议。
答案 0 :(得分:1)
您可以使用UDP或TCP打孔来使用Peer to Peer连接。
答案 1 :(得分:0)
虽然您可以重新发明轮子,即实现您提到的内容:打开服务器套接字的服务器并等待来自客户端的连接,以某种方式知道服务器所在的客户端并连接到它等等,我建议您使用更高级别的工具。
选择取决于您的申请的性质。
等等
因此,您可以使用可能的消息(JMS,Kafka等)或网格(Hazelcast,GigaSpaces)等等。
尝试为我的问题准备答案。尝试找到其他问题并回答它们。然后在这里提出更具体的问题。
答案 2 :(得分:0)
首先,你说1个服务器和3个客户端,所以这是客户端/服务器,而不是点对点。我的建议是使用套接字编程(服务器上的java.net.ServerSocket,或者它周围的框架,如Netty或0MQ),或使用更高级别的HTTP和REST。一旦客户端连接到服务器,只需让服务器向新客户端发送有关旧客户端的所有信息。反之亦然,他们可以直接连接。
答案 3 :(得分:0)
出于以下原因,我强烈建议您从Java文档开始阅读Socket programming tutorial:
我的建议是先下载所有源代码,然后将它们加载到您喜欢的IDE中,然后开始阅读教程并同时跟踪代码。我觉得这个过程真的很有用。