2010-11-09 59 views
0

我一直在监视Firebug的Net面板,并注意到在下载任何其他资源之前必须首先下载HTML。我猜这是有道理的,因为其他资源是在HTML中定义的。有没有解决方法,以便在HTML下载期间可以下载其他组件?并行下载

+0

感觉有点像你已经回答了你自己的问题。浏览器需要检索所有标记并在知道需要其他资源之前开始解析它。你的意思是如何使用Facebook的BigPipe [1]等优化这个过程? [1] http://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919 – jabley 2010-11-09 13:12:00

回答

0

调试101:您在调试时看到的内容与您不查找时发生的情况不同。

大多数浏览器在下载时会启动HTML解释,并开始同时下载其他资源。 Firebug不是一个很好的地方看到发生,请尝试HTTPFox。

现在,回答您的问题:您无需做任何事情即可让浏览器在下载您的HTML时下载其他组件,它将为您解决这个问题。

0

否 - 浏览器首先需要一个解析的HTML文件,然后才可以将它们移到不同的子域虽然下载脚本,图片等

可以加快非HTML元素的下载:浏览器有通过使用子域避开每个主机的连接数限制。此外,您可以压缩/缩小您的CSS/JavaScript文件以减小其大小。

0

有人可能会创建一个小的HTML文件,然后通过各种类似AJAX的调用来填充页面的其余部分,但如果有人禁用了JavaScript,那么该页面可能看起来非常糟糕。从某种意义上说,这是拿出一些原始的HTML内容,并单独下载,这可能或不是一个好主意。从某种意义上说,尽管这种方式使用了更多的网络资源,因为在这种情况下会有很多请求来完全加载页面,但这是一个什么是可接受的权衡的问题。