在只读取有用的数据后关闭套接字,我真的节省了带宽吗



我的意思是,我有一个应用程序,第一步只需要获取Web服务器中一些图像的大小,为此,我使用fsockopen。在读取了content-length标头之后,我关闭了套接字。

这个问题可能很傻,但我对tcp协议和整个互联网数据传输过程以及文件如何通过这个套接字到达我的php应用程序知之甚少,所以我想知道的是:我是在读取整个文件之前关闭套接字来节省带宽,还是它仍然完整地传输到我的本地机器?托管映像的服务器呢?它知道套接字已关闭并停止发送数据吗?

它依赖于一堆东西。如果图像是10兆字节,则是。绝对地如果是10万,那么可能不是。

这一切都与缓冲区有关——到处都是缓冲区。在每台计算机上,在它们之间的网络中的每台设备上的缓冲区。。以及延迟和可用带宽。

但基本上,如果文件很大,是的,你在节省带宽。如果它很小,你就不是。准确地计算出来会很困难,而且所涉及的变量数量也会很大。除非你控制了完整的端到端系统,否则盈亏平衡点可能会随着时间的推移而改变(即使这样,你很难控制的很多事情仍然会影响答案)。

基本上是的,对于足够大的文件,但如果使用HTTP HEAD请求,而不是完整的GET请求,则会节省更多。然后保存所有文件。

相关内容

  • 没有找到相关文章

最新更新