我想创建一个P2P应用程序,其中没有中央服务器和客户端直接相互通信。 RMI是否支持P2P ... 请做评论,并告诉我如何在RMI中如何做这个项目..提前感谢
答案 0 :(得分:0)
“P2P”是一个架构术语。 RMI是一种协议。两者完全相互独立。
是的,您可以将RMI用于P2P应用程序。您可以使用任何您喜欢的协议进行P2P通信。 RMI既不知道也不关心它是P2P还是客户端服务器,它看到的只是网络连接的两端。
如果您有更具体的问题,可能需要问一下。
答案 1 :(得分:0)
是的,确实如此:
http://www.java.net/project/p2p-rmi-over-jxta
http://java.sun.com/developer/Books/networking/jxta/jxtap2pch03.pdf
但其含义是所有对等方都必须是Java,因为它们都需要了解RMI。这可能是一个限制因素。
答案 2 :(得分:0)
RMI对象确实是彼此对等的。每个都是它自己的服务器(从概念上讲,它们实际上共享一个有意义的服务器套接字)。但是,所有这些对象仍然需要相互发现,最简单的模型就是有更多的客户端服务器。
另一个问题当然是安全;你如何信任其他同行发送的消息?但是,这是所有P2P架构中的问题。