因为业务量增加导致有些UDP的包丢了,继而导致业务处理受到影响。最后查看是因为socket的receive buff size设置是128K(内核里乘2是256K)
相应的错误计数使用netstat -s查看
Udp:
52401547 packets received
13302 packets to unknown port received
868129 packet receive errors
24214126 packets sent
868129 receive buffer errors 这个有增加
然后继续查看具体socket上的drop计数:
/proc/<pid>/net/udp
这个文件的最后一列是drop的计数。修改buff到256K(内核512K)业务恢复正常。