无IP地址的java通信
我想问一下算法或方法。我有这样的案例:
我有应用程序,我安装到2个人电脑(不同的网络),我想电脑“A”可以发送数据和读取响应和PC“B”,但不知道PC“B”的IP地址。PC“B”可以在不知道PC“A”IP地址的情况下将数据发送回PC“B”
示例:PC“A”具有唯一的应用程序id=>;“ABC”和PC“B”具有唯一的应用程序id==>;“DDD”
如何仅使用“ABC”或“DDD”作为参数进行通信/发送数据
示例:PC“A”在文本框中输入PC“B”id(“DDD”),然后发送数据。PC“B”或id为“DDD”的应用程序如何接收这些数据
# 1 楼答案
另一个解决方案可能是使用一些消息传递系统,如JMS。但是在这种情况下,您可能需要一台额外的机器作为消息代理,并且所有机器都必须知道该代理的IP地址和端口
早期也有JMS实现,没有使用广播的中央代理,但我不知道它们是否仍然存在
# 2 楼答案
听起来您想创建一个对等应用程序
这个任务有JXTA框架。但是,如果两个对等点位于两个不同的网络中,那么您将需要一些超级对等点
https://jxta.kenai.com/
JXSE提供了JXTA的Java实现
https://jxse.kenai.com/
注意,JXTA项目的当前状态有点不清楚