我正在开发一个在后端使用Node.js
,而Angular.js
作为前端的项目,我需要捕获应用的不同资源的页面加载统计信息不同浏览器。我能够使用Resource Timing API收集基本统计信息,并将生成的JSON
对象存储在服务器上。但在阅读关于SO的this问题后,我了解了Boomerang库,现在我有点困惑。对于单页应用程序(即内置于Angular),使用 Boomerang 而不是资源计时API 会有什么优势?
答案 0 :(得分:7)
Boomerang是一个开源库,用于衡量真实用户的页面加载体验,通常称为真实用户监控(RUM)。 Boomerang测量页面加载体验的许多方面,包括主页面的所有可用网络时序(DNS,TCP,请求,响应)和其他重要的环境特征,如用户代理信息等。
Boomerang最初开发用于帮助监控传统的"页面加载,您访问的每个页面都会启动新的浏览器导航。在像Angular.js这样的单页面应用程序(SPA)场景中,访问者在获取新内容时不再进行完整的浏览器导航,因为Angular会根据需要通过XHR提取所需的部分并将其注入DOM。今天SPA方案中的Boomerang将监控初始页面加载,但后续SPA页面都没有加载。
如果您正在使用ResourceTiming来收集资源'您感兴趣的网络统计数据,只关心这些统计数据,那么您将不需要Boomerang。但是,如果您有兴趣收集有关用户整个页面加载体验的更多信息,Boomerang会收集有关页面加载体验和信标的更多信息,并将信息返回给您的服务器。
Boomerang拥有强大的插件基础架构,支持扩展以适应您想要的任何场景。虽然它目前还没有支持" SPA软页面加载导航开箱即用,目前正在开发一个插件来帮助SPA。