4

我正在开发一个Node.js在后端使用的项目,Angular.js作为前端,我需要捕获跨不同浏览器的应用程序不同资源的页面加载统计信息。我能够通过使用Resource Timing API并将结果JSON对象存储在服务器上来收集基本统计信息。但是在阅读了关于 SO 的这个问题之后,我了解了Boomerang库,现在我有点困惑。对于单页应用程序(即内置于 Angular) ,使用BoomerangResource Timing API相比有什么优势?

4

1 回答 1

8

Boomerang是一个开源库,用于测量真实用户的页面加载体验,通常称为真实用户监控 (RUM)。Boomerang 测量页面加载体验的许多方面,包括主页的所有可用网络计时(DNS、TCP、请求、响应)和其他重要的环境特征,如用户代理信息等。

Boomerang 最初是为了帮助监控“传统”页面加载而开发的,您访问的每个页面都会启动新的浏览器导航。在像 Angular.js 这样的单页应用程序 (SPA) 场景中,您的访问者在获取新内容时不再进行完整的浏览器导航,因为 Angular 根据需要通过 XHR 提取所需的部分并将它们注入到 DOM 中。今天在 SPA 场景中的 Boomerang 将监控初始页面加载,但不会监控后续 SPA 页面加载。

如果您使用 ResourceTiming 来收集您感兴趣的资源的网络统计信息,并且只关心这些统计信息,那么您将不需要 Boomerang。但是,如果您有兴趣为用户收集有关整个页面加载体验的更多信息,B​​oomerang 会收集更多有关页面加载体验的信息并将信标返回到您的服务器。

Boomerang 具有强大的插件基础架构,支持扩展以适应您想要的任何场景。虽然它目前不“支持”开箱即用的 SPA 软页面加载导航,但目前正在开发一个插件来帮助 SPA。

于 2015-03-16T13:39:55.407 回答