java - 用于客户端-服务器-客户端架构的 Java 框架/api

标签 java sockets client-server zeromq

我目前正在开发一个项目,其中有客户端系统、用户系统和服务器。对于我们的示例,让我们使用客户端 A服务器用户 A。

客户端 A 向服务器发送一个保持 Activity 数据包,服务器将套接字信息存储为带有客户端 ID 的 HashMap /列表。这样可以将更多数量的客户端添加到 HashMap /列表中。

用户A想要向客户端A发送信息,因此它连接到服务器向客户端A发送消息。服务器从 HashMap /列表中获取相关套接字信息并将其传递给用户 A,或者服务器将两个套接字绑定(bind)在一起。

对于将套接字合并在一起的这一部分有点无能为力。任何意见或建议表示赞赏。目前我正在尝试 ZeroMQ,但没有取得任何进展,我可以研究任何其他框架、API 或库吗?

最佳答案

您无法将客户端 A 的连接传递给用户 A,但您可以将两个套接字绑定(bind)在一起。这需要 2 个线程:一个从用户套接字读取并写入客户端套接字,另一个从客户端套接字读取并写入用户套接字。如果2个线程太多资源消耗,可以考虑使用NIO库(有很多)。

关于java - 用于客户端-服务器-客户端架构的 Java 框架/api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18734428/

相关文章:

从构建的 JRT 模块运行应用程序时,从 URL 构造的 JavaFX 11 javafx.scene.image 抛出 SSLHandshakeException

java - 创建一个具有 gui 的服务器应用程序

sockets - TCP 事务花费的时间越来越长

c - 如何通过缓冲区传递整数?

java - 如何创建机器人测试套件?

Java选择项目

php - 客户端上的套接字连接不起作用

javascript - JavaScript 中的客户端服务器端

c - 在从客户端发送任何消息之前,无法将消息从服​​务器端打印到客户端

java - jboss中类文件的热部署