RUM Android SDK 基于 OkHttp3 EventListener 的回调精确计算各阶段耗时,明确的计算公式确保了数据的可解读性。重定向耗时(redirect_duration)= callStart - (first)callStart,含义是 HTTP 重定向总耗时,无重定向时为 0。DNS 查询耗时(dns_duration)= dnsEnd - dnsStart,连接池复用时为 0。TCP 连接耗时(connect_duration)= connectEnd - connectStart,包含 TCP 三次握手和 SSL/TLS 握手时间,连接复用时为 0。SSL 安全连接耗时(ssl_duration)= secureConnectEnd - secureConnectStart,仅 HTTPS 有值,连接复用时为 0。请求响应耗时(first_byte_duration)= responseHeadersStart - requestHeadersStart,从请求发送到收到响应首字节。内容传输耗时(download_duration)= responseBodyEnd - responseHeadersStart,响应体下载时间。总耗时(duration)= responseBodyEnd - callStart。需要特别注意:控制台展示的"TCP 连接耗时"实际上包含了 SSL 握手时间,原始时间起始节点可在 resource.timing_data 字段查看。




