TCP RST对Javascript脚本src标记页面加载时间的影响

TCP RST对Javascript脚本src标记页面加载时间的影响,tcp,image,pageload,Tcp,Image,Pageload,我想反对(关闭/不发送HTTP响应)我的客户端在其页面上安装的一些旧HTML&JS代码。并非所有客户都可以在我们弃用之前更新他们的所有网页,但我有权弃用 代码外观的简单示例: 客户域,Customer.com,其页面上有HTML和JS: <script src="http://mycompany.com/?customer=customer.com&..."></script> 我们正在考虑配置交换机,以便将传入的不推荐请求的TCP RST响应发送到http

我想反对(关闭/不发送HTTP响应)我的客户端在其页面上安装的一些旧HTML&JS代码。并非所有客户都可以在我们弃用之前更新他们的所有网页,但我有权弃用

代码外观的简单示例:

客户域,Customer.com,其页面上有HTML和JS:

<script src="http://mycompany.com/?customer=customer.com&..."></script>


我们正在考虑配置交换机,以便将传入的不推荐请求的TCP RST响应发送到
http://mycompany.com/...
,所以我的问题是,是否有任何副作用(例如,暂停页面加载)通过将交换机配置为在传入的TCP连接上使用TCP RST进行响应的方法?显然,我希望对客户站点的影响最小。

我不得不认为,
RST
是一种相当苛刻的机制,不响应单个请求。此请求可能是呈现一个客户端页面所需的100个资源之一,如果您断开连接,则该连接无法重新用于请求更多资源。(参见中的19.7.1:“持久连接是 HTTP/1.1消息;我们为 声明非持久性。”)

每个新连接都需要设置一个新的连接,这可能会为客户端用于从服务器检索资源的两个连接之一的每个失败请求增加半秒。您的服务器和客户之间的平均延迟是多少?将其乘以3,即可获得新的三方握手时间

如果您在HTTP协议级别的请求失败(
301
302
404
410
?),您可以返回现有HTTP连接中的故障,并保存三次往返以生成新连接(也可能是针对您不再感兴趣提供服务的资源)


另外,
410
应该表明浏览器不应该再次请求资源(但我不知道哪些浏览器会遵循此建议。)
RST
-ed资源可能会在每次请求时重新尝试。

我对您回答中的这句话有疑问“请求可能是呈现一个客户端页面所需的100个资源之一”…我可以确认,客户端每页最多有2或3个我们的资源,但几乎总是(99.9%的客户端)每页只有一个我们的资源。一个TCP连接只服务于一个主机的资源,对吗?假设是,只拆除将创建的1个TCP连接不会影响其他非mycompany.com资源?我仍然喜欢410的想法,并正在考虑实现它。@mrk,您可能是正确的:如果页面请求没有链接图像、flash、电影、css、javascript等,则使用
RST
可能与使用
410
一样快。但是,您的用户将获得一个“与服务器的连接已重置”错误页面,这鼓励再次尝试连接。a
410
“很抱歉,这不再存在。”“更有力一点。