facebook的bigpipe是一种技术,能使一个网页的加载变得更快。
在 http://velocity.oreilly.com.cn/ppts/ChanghaoJiang.pdf 这个PPT的39-79页有详细说明。
我们知道一个HTML页面的加载时间主要分为三部分:服务端生成、网络时延、浏览器渲染。
在服务端生成数据的时候,浏览器是处于闲置状态的,反之亦然。
bigpipe的思想就是将页面分块加载,通过巧妙的JS逻辑,尽可能充分的利用服务器和浏览器的时间(见PPT43页)。
此外,为了对搜索引擎友好,也同时支持页面的single flush。