这是我第一次用 java 编程网络。我正在寻找一种以某种方式向整个网络中的所有节点发送广播的方法。让他们知道我的存在。我正在尝试制作多人网络游戏,我希望客户能够看到所有可用的游戏来选择加入哪个游戏。我想知道如何从服务器广播以及如何让客户端收听。
请简单点,我是新手:)
提前致谢。
这是我第一次用 java 编程网络。我正在寻找一种以某种方式向整个网络中的所有节点发送广播的方法。让他们知道我的存在。我正在尝试制作多人网络游戏,我希望客户能够看到所有可用的游戏来选择加入哪个游戏。我想知道如何从服务器广播以及如何让客户端收听。
请简单点,我是新手:)
提前致谢。
不要混淆术语。
广播通常用于 UDP。UDP 是不可靠的,因为它不检查客户端是否接收到所有数据包。向大量客户端打开大量 TCP 连接不是广播。
要让您的客户端监听端口,您需要使用 ServerSocket 并读取它。
我建议您使用PubSubHubbub或类似的协议。基本上,您将拥有一个“集线器”,向其发送您想要“广播”的通知。每个节点都订阅该主题,方法是提供一个 URL,当新数据到达时集线器可以调用该 URL。当“集线器”收到此广播时,集线器会联系每个订阅 URL 以让节点知道有新数据。