我正在寻找具有以下功能的 Java 的良好 TCP 连接库:
1. Retry on failed publishes
2. Multiple connections
您成功使用了哪个库。
编辑:根据评论更改了问题以反映哪种类型的连接库。
我正在寻找具有以下功能的 Java 的良好 TCP 连接库:
1. Retry on failed publishes
2. Multiple connections
您成功使用了哪个库。
编辑:根据评论更改了问题以反映哪种类型的连接库。
可能是Apache MINA会帮助你。看看。
我不确定这是否真的有意义。您正在谈论重试失败的发布,但 TCP 没有发布的概念。只是消息传递。因此,您可能正在发布,或者您可能正在请求信息。
例如,基于 TCP 的 HTTP 具有动词 GET/PUT/POST(以及其他)。所有这些都通过 TCP 运行。只有两个实际写了一些东西(PUT/POST)。并且只有 PUT 应该是幂等的(也就是说,您应该能够一次又一次地进行相同的操作并获得相同的结果)。如果您反复发布,我希望重新发布一些内容并在服务器上为每个 POST 创建一个新版本。
以上只是关于如何实现 PUT/POST 的建议。我不希望 HTTP 库代表我承担这一点。
所以在 TCP 层重试消息的概念是错误的(注意 TCP 会重新发送数据包等组成消息)。这是一个更高级别的功能,它可能在较低级别使用 TCP。例如,当我的远程服务器暂时不可用或报告错误时,我围绕 HTTPClient 编写了自己的包装器以重试 PUT(我不确定是否存在重试 HTTP 库)