我如何识别dynamicwebapp服务器上的“喂食问题”?

正如最近向我解释的那样,“喂食问题”发生在连接到应用程序服务器的连接将缓慢networking连接的数据连接到客户端时。 这对我来说是有意义的,现在我明白在我的应用程序服务器之前放置高并发代理的重要性。

我的问题是,第一个人如何认识到这个问题呢? 如果我没有向我解释这些问题,哪些* nix工具和故障排除技术将帮助我认识到这个问题?

根据体系结构的不同,还可以看到CPU用户空间CPU利用率较低,但由于在内核空间networkingIO例程内等待队列阻塞的进程导致负载较高。 如果你正在运行一个线程池系统,很多时候你的请求被拒绝或者CPU使用率很低,IO等待计数器将会很高。

有时创build额外的线程/工作人员可以暂时缓解问题,直到您的系统达到另一个临界质量。

说实话,看起来很像你在慢速NFS服务器时遇到的情况。

如果您使用的是Apache,那么在查看服务器状态页面时,典型的症状是处于“W”状态的很多连接。

这不是一个* nix工具,但我发现与Wireshark或Wildpackets结合使用托pipe交换机端口镜像非常有用。 使用filter可以比较快速运行的类似事务的速度。