观察 socket 内存
观察 socket 内存
ss -m dst :8080
# skmem 括号内 r/t 为收发排队字节, rb/tb 为对应缓冲上限| 阻塞式 socket | 缓冲满则挂起, 直到有空间 |
|---|---|
| 非阻塞 socket | 返回 EAGAIN, 由应用重试或排队 |
排查顺序: 先看对端接收速度与网络 RTT(ss -ti 的 cwnd/rtt), 再考虑应用侧发送节奏与缓冲设置。
应用 write/send 偶发卡住不返回, 常见原因是发送缓冲已满且对端读取慢; 用 ss -m 观察 socket 排队量与缓冲上限。
ss -m dst :8080
# skmem 括号内 r/t 为收发排队字节, rb/tb 为对应缓冲上限| 阻塞式 socket | 缓冲满则挂起, 直到有空间 |
|---|---|
| 非阻塞 socket | 返回 EAGAIN, 由应用重试或排队 |