【问题标题】:How to implement a bidirectional "mailbox service" over tcp?如何通过 tcp 实现双向“邮箱服务”?
【发布时间】:2026-01-06 17:05:02
【问题描述】:

这个想法是允许对等进程通过 tcp 尽可能多地异步交换消息(数据包)。

我希望它的工作方式是每个进程都有一个发件箱和一个收件箱。发送操作只是对发件箱的推送。接收操作只是收件箱上的一个弹出窗口。底层协议会处理通信细节。

有没有办法使用单个 TCP 连接来实现这种机制?

如何使用 BSD 套接字和现代 OO 套接字 API(如 Java 或 C# 套接字 API)来实现?

【问题讨论】:

    标签: asynchronous tcp messages bidirectional packets


    【解决方案1】:

    是的,它可以通过单个 TCP 连接来完成。举一个明显的例子,(虽然比你真正需要的要复杂一些)你可以看看 NNTP 协议 (RFC 3977)。您似乎想要的类似于检索和发布文章。

    【讨论】: