您现在的位置是:首页 >互联网 > 2020-11-25 13:59:24 来源:

Facebook贡献开源技术来提高Web浏览器性能

Facebook Inc.希望提高基于Web的应用程序的性能,并且通过公开采购几种新技术来实现这一目标,它希望主流互联网浏览器能够采用。

在 Facebook的Performance @ Scale会议上的演讲中,Facebook浏览器工程团队的Vlad Djeric表示,基于Web的应用程序的性能较差通常对于最终用户而言非常明显。例如,他说,一些精明的用户可能已经注意到,Facebook网站的加载速度往往比其移动应用程序要慢得多,尽管该Web应用程序实际上包含的代码要少得多。

Djeric在一篇博客文章中说,造成这种差异的原因有很多,但最重要的是网络浏览器不支持大规模的JavaScript代码库,并且浏览器无法访问构建更好的,重要的“系统级”应用程序编程接口,执行应用。

“与机器代码相比,JavaScript通常会遭受解析,编译和运行时即时(JIT)优化开销的困扰,” Djeric指出。“此外,今天加载JavaScript通常意味着在关键路径上等待网络往返或在页面加载开始时等待无法可靠地扩展到数十个同时资源请求的浏览器HTTP缓存。”

对于Web API,Djeric说,它们的问题在于它们通常不如移动应用程序中使用的本机API强大,缺乏许多功能。他说,例如,没有标准的Web应用程序可以查询自己的内存使用情况的Web API。

为了解决这些问题,Facebook的浏览器工程师创建了许多开源技术,它们正在鼓励浏览器制造商在其代码库中采用。

它们包括“ isInputPending()API ” (使Web浏览器能够更有效地处理JavaScript任务)和一项称为“退休指令数”的技术来改善浏览器性能测试。

Djeric的团队还构建了一个新的“ JavaScript自配置API ”,已在基于Google Chrome的开源Chromium浏览器中实现,该API可帮助识别网络流量中的瓶颈。最终,Facebook与Mozilla基金会合作,该基金会基于实验性的“用于JavaScript的BinAST二进制编码格式”开发了Firefox浏览器,从而有助于更有效地解析JavaScript代码。

Djeric的术语丰富的博客文章广泛介绍了Facebook的开放源代码浏览器工作的精髓,可在此处阅读。

Djeric说:“我们认为,有机会提高Web平台的性能和丰富性。” “网络属性,网络开发人员,标准专家和浏览器供应商之间的协作对于产生新的想法是必要的,以帮助弥合当今网络与未来类似网络的性能之间的鸿沟。”