在阅读php-amqplib配置时,我看到了两个参数:"heartbeat“和"read_write_timeout”。
在网上(在两三个论坛上)我发现: read_write_timeout必须至少是心跳的两倍,但我从来没有看到背后的原因。
谁能解释一下为什么read_write_timeout必须至少有2倍的心跳?它依赖于心跳间隔吗?
提前感谢。
发布于 2021-01-15 20:48:31
关于here和here的一些讨论
这可以归结为一个简单的原因,即如果没有及时发送心跳以使连接保持活动状态,则连接可能会在正确处理之前关闭。这是毫秒级的工作,所以连接可能在:30自动关闭,而心跳应该在:31发送。
https://stackoverflow.com/questions/64013120
相似问题