java通讯协议(protocol)

标签 java sockets tcp ip

我即将通过互联网上的 tcp/ip 实现服务器/客户端通信。服务器和客户端在尝试同步它们的状态时会有点闲聊。

client: sends state
server: check state and request differences
client: sends 1 element
server: sends ack/nak
client: sends 1 element
server: sends ack/nak
.
.
.
etc.

实现它的最佳方法是什么?我应该使用原始套接字吗?我应该使用 2 个连接,每个方向一个吗?我应该使用框架吗?任何想法表示赞赏。

谢谢

编辑:当优先考虑大负载(千兆字节的数据)、稳定性和易于实现时,实现这一点的最佳方法是什么?

.. 顺便说一句,客户端和服务器之间没有区别。他们可以随时转换角色,成为建立联系的人。

使用处理重新连接等的框架可能会很好。

最佳答案

如果客户端和服务器都将是 Java 程序,请考虑使用 RMI 的替代方案:

The Java Remote Method Invocation (RMI) system allows an object running in one Java virtual machine to invoke methods on an object running in another Java virtual machine. RMI provides for remote communication between programs written in the Java programming language.

这比尝试在套接字之上实现您自己的协议(protocol)要简单。

关于java通讯协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8460176/

相关文章:

java - Java声音文件未播放

c - tcp ip 检查我遗漏了一些东西

java - 无法从静态方法返回修改后的字符串

java - 无法解析 graphql 查询类上的符号 "Data"

java - 需要服务器和链接列表帮助

sockets - UDP有多安全?

C++ 升压 ASIO : how to read/write with a timeout?

tcp - 如何写一个tcp代理?

http - 通过 IP 限制对站点的访问

java - JVM G1 survivor 空间容量为0