在我的应用程序中,我发现TCP连接上的
send()
调用有时会被阻塞。每当发生这种情况时,从netstat
输出中可以看到TCP连接的Recv-Q非常高:tcp 314238 0 10.8.8.21:47302 10.8.8.11:5672 ESTABLISHED
tcp 313276 0 10.8.8.21:47294 10.8.8.11:5672 ESTABLISHED
是什么原因导致TCP连接的接收缓冲区被填满?这如何导致我的send()
调用无限期地挂起?
p.s. 可能与此相关,此TCP连接是在我的应用程序和RabbitMQ服务器之间建立的。