java - 如何使用 Java 测量网络的响应时间?

标签 java networking response-time

我们有一个客户端和一个服务器。我想测量它们之间网络的响应时间。当我向服务器发送请求时,它应该立即响应我的请求,它应该像 ping 请求一样,这样服务器就没有处理时间。

我如何在 Java 中执行此操作?

最佳答案

我通过从客户端向服务器发送一个带有时间戳的数据包,然后让服务器返回相同的时间戳来完成此操作。当服务器收到时间戳时,它可以与当前时间戳进行比较以测量往返时间。

显然有一种方法可以生成 ICMP ping在 Java 5 及更高版本中。如果您想测量网络速度,只需抓取前后的 System.nanoTime() 并进行比较。请注意,如果您的程序运行时没有足够的权限来执行 ICMP ping,那么 Java 将使用对端口 7 的 TCP 回显请求,这仍然适合您的需要。

关于java - 如何使用 Java 测量网络的响应时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/724124/

相关文章:

java - 斯波克框架 : matching wildcard arguments

java - Java 中使用位置索引进行流标记

python - 绑定(bind)到特定范围内的开放端口

testing - 放心的响应时间

javascript - 测量服务器响应时间(客户端)

javax.crypto.BadPaddingException

java - 如何使用相同的库在 Eclipse 中编译和运行?

java - 通过防火墙或 NAT 进行双向异步调用和回调的 RMI 替代方案

php - 如何获取相同的firebug "network"部分信息?

php - 如何加快 Laravel 的速度?