![在发送响应之前测量吞吐量](https://linux22.com/image/676657/%E5%9C%A8%E5%8F%91%E9%80%81%E5%93%8D%E5%BA%94%E4%B9%8B%E5%89%8D%E6%B5%8B%E9%87%8F%E5%90%9E%E5%90%90%E9%87%8F.png)
我的想法是让在较慢连接上运行的 Web 应用程序能够回退到其他较小的资产版本(如图像、视频等)。HTTP 实时流具有类似的行为,但针对的是视频流。
起初我以为,这可以通过使用 HTTP/2 服务器推送来实现。Web 服务器会在关闭连接之前发送响应、测量吞吐量并推送适当的资产版本。但这会消除服务器推送的优势,因为客户端只有在收到页面主体后才能开始下载资产。由于资产不是以流的形式提供的,因此服务器应该在向客户端发送 HTTP 响应之前检测吞吐量。
我还想检查是否可以从 TCP 堆栈获取吞吐量,例如来自慢启动的值。但我猜它只有在发送响应时才可用。
有人知道网络服务器如何在发送响应之前测量有效吞吐量吗?