java - 测量 Servlet 的总网络传输时间

标签 java tomcat servlets time sockets

我如何衡量客户必须等待请求的时间。

在服务器端很容易,例如通过过滤器。 但是,如果我们想考虑包​​括延迟和数据传输在内的总时间,那就很难了。

是否可以访问底层套接字以查看请求何时完成? 还是需要做一些 javascript 技巧?也许通过浏览器和服务器之间的时钟同步?此任务是否有任何预制的 javascript?

最佳答案

您可以包装 HttpServletResponse 对象和 HttpServletResponse 返回的 OutputStream。当输出开始写入时,您可以设置一个开始日期,当它停止时(或刷新时等)您可以设置一个停止日期。

这可用于计算将所有数据流式传输回客户端所花费的时间长度。

我们在我们的应用程序中使用它,数字看起来很合理。

编辑:您可以在 ServletFilter 中设置开始日期以获取客户端等待的时间长度。我给了你将输出写入客户端所需的时间长度。

关于java - 测量 Servlet 的总网络传输时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/86008/

相关文章:

java - 在 jdk 中找不到 javax.ws.rs 包

tomcat - 我如何在 tomcat 服务器上安装 drupal 7

java - 当 Web 项目从 Eclipse 导出为 war 文件时无法导出非 jar 文件

Java servlet 在 doPost 中同步 doGet

Java Jsp - 我们可以将输出保存为 PDF 或 Word 文件吗?

Java-使用字符串从数组中获取值

java - 使用 GwtQuery 绑定(bind)到 DOM 事件

java - Tomcat 6 JAVA_HOME

java - Wicket 应用程序可以在没有管理员密码的情况下触发自身重启吗?

java - 上传新的 .war 文件,但 tomcat 仍然以某种方式提供旧代码?