有没有办法找出当前在 Linux 上的 TCP 套接字上等待 accept() 的连接尝试次数?
我想我可以计算在每个事件循环上点击 EWOULDBLOCK 之前成功的接受()的数量,但我使用的是隐藏这些细节的高级库(Python/Twisted)。它还使用 epoll() 而不是老式的 select()/poll() 循环。
我试图大致了解高性能非阻塞网络服务器上的负载,我认为这个数字将是一个很好的表征。平均负载/CPU 统计数据没有多大帮助,因为我在并发工作进程中执行了大量磁盘 I/O。Linux 上的大多数这些统计数据都将等待磁盘 I/O 所花费的时间计算为负载的一部分(对于我的特定服务器架构,它不是)。接受()和响应之间的延迟也不是一个好的衡量标准,因为一旦服务器处理了每个请求,它通常会很快得到处理。我只是想找出我距离服务器无法以比它们进来的速度更快的速度发送请求的断点有多近。