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