java - 如何在套接字级别拦截 Tomcat 请求?

标签 java performance apache tomcat tomcat6

我正在对在 Apache Tomcat 6 上运行的 Web 应用程序框架进行性能研究。

我正在尝试测量处理 HTTP 请求的时间开销。

我想做的是:

/

// just before first request byte is read
long t1 = System.nanoTime();

// request is processed...

// just after final byte is written to response
long t2 = System.nanoTime();

/

然后我会计算总时间 (t2 - t1)。

有办法做到这一点吗?感谢您的帮助!

最佳答案

跟踪此问题的最佳方法可能是使用 Valve .

但如果 Tomcat 导出的 MBean 中尚未对此进行跟踪,我会感到惊讶。特别是,MBean Catalina:name=http-<my port num>,type=GlobalRequestProcessor列出以下属性:

bytesSent=51829989
bytesReceived=0
processingTime=11464
errorCount=8
maxTime=1250
requestCount=923
modelerType=org.apache.coyote.RequestGroupInfo

查看 Monitoring and Managing Tomcat 上的文档了解如何使用 JMX 访问这些 MBean。

关于java - 如何在套接字级别拦截 Tomcat 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2630437/

相关文章:

java - 使用 Jackson 将多个 mixins 添加到一个类中

java - 按位与在 Java 哈希表哈希查找中?

performance - 大型 MatLab 图形的渲染速度很慢

linux - 虚拟主机 Apache 2.2

JAVA ANDROID - 获取文件夹的列表文件

java - 如何使用 Glide 和 OkHttp 获取 http 响应头

jQuery 函数在 IE 上的性能

.net - 通过 ADO.Net 和 COM 互操作性进行 MS Access 批量更新

apache - 书签提交或相关数据库操作上的mod_wsgi意外行为

php - httpd、myslqd 和 SELinux