在同一主机上的服务器/客户端之间共享数据的最佳方法?

时间:2013-07-16 15:19:57

标签: java sockets client-server data-sharing

我正在用Java创建一个多线程UDP客户端/服务器应用程序,并且遇到了一些麻烦。我有一个“解决方案”,但我90%肯定这是解决这个问题的补丁。

让我们调用主机1的线程客户端1和服务器1(C1和S1),以及主机2的线程客户端2和服务器2(C2& S2)。所有这些都扩展了Thread和覆盖run(),而客户端还包括一些其他方法(例如chat()来启动主机之间的聊天)。然后我通过调用start()的第三个类启动每个相应的客户端/服务器对。

为了获得数据流,我为C1 / S2和C2 / S1对创建了一个套接字,并通过它发送/接收UDP数据报。但是,我的客户需要响应其他客户端的聊天消息,因此S1还必须与C1通信,S2与C2通话。

设置此通信的最佳方式是什么?我认为我可以为localhost中的每一台机器(基于客户机类/线程)创建另一个套接字,让一个主机的客户机/服务器线程相互通信,但这似乎更像是一种解决方法,而不是一个办法。还有更好的方法吗?

0 个答案:

没有答案