Ajax View: Remotely Monitoring Web 2.0 Applications工具
Ajax View project的目的就是在客户端桌面改进WEB应用程序开发者的检测的可见性和控制性.
Ajax View 的方式就是在Web Server 机器与客户端浏览器中插入一个server-side proxy,这个代理捕获Web Application的JavaScript代码,就是发送到浏览器和重写代码并插入额外的测试仪器代码.注入测试仪器代码运行在客户端浏览器中的Web Application间隙并能捕获执行,调用图表,程序状态和用户交互信息,提供立即可见的的用户体验.
因为AJAX View 是在一个用户浏览页面时每时动态的重写Web application代码:
1. serve different instrumentation code to different users. This allows us to distribute instrumentation code across many users, spreading the cost of gathering lots of information such that no single user pays a high performance penalty.
2. adapt an instrumentation policy and serve different instrumentation code over time. For example, we can drill-down into performance problems and gather extra context about bugs
下载
http://research.microsoft.com/research/downloads/details/e82e1a27-e500-4e91-85fd-75886242acfc/details.aspx
A. Performance Profiling Walk-Through
1:安装Ajax View 后在开始菜单中打开 Ajax View Proxy
2:Ajax View client-side proxy 运行在 port 8888
3:将你的IE 和 Firefox设置代理为localhost port 8888就OK,
4如何修改IE代理配置:
工具---->Internet Options--->Connections pane---> LAN Settings
就是这里:
![](https://www.cnblogs.com/images/cnblogs_com/worksguo/115331/r_AjAX%20VIEW.jpg)
具体可以看这里:http://research.microsoft.com/projects/ajaxview/AjaxViewUsage-1.htm
5:你访问 http://maps.live.com/ 就能测试.
6现在还可以查看信息聚集.
访问这个http://fakeurl.com/?&AJAXVIEWREQUEST=GET=main.html
就能查看JS Performance Statistics执行统计.
第二就是看是怎样工作的:
Ajax View就是使用获取并重写Web application的JavaScript 代码和向里面注入检测机器码.这里的重写就是由嵌入代理内的更多机器检测代码来控制.
如:
<script>
function HelloWorld( a, b ) {
![](/Images/OutliningIndicators/InBlock.gif)
alert(‘hello world!’);
![](/Images/OutliningIndicators/InBlock.gif)
}
</script>
增加检测码后的为:
<script>
LogScriptEnter();
![](/Images/OutliningIndicators/None.gif)
function HelloWorld( a, b ) {
![](/Images/OutliningIndicators/InBlock.gif)
LogFuncEnter(“HelloWorld”);
![](/Images/OutliningIndicators/InBlock.gif)
alert(‘hello world!’);
![](/Images/OutliningIndicators/InBlock.gif)
LogFuncExit(“HelloWorld”));
![](/Images/OutliningIndicators/InBlock.gif)
}
![](/Images/OutliningIndicators/None.gif)
LogScriptExit();
</script>
Conclusion
你Ajax View proxy聚集Web application执行信息,不是修改最开始的Web Application,也不是安装其他的插件,ActiveX控件或Web浏览器.
Ajax View只是当前研究的初期原型,我会在未来为我们的工程考虑几个趋势,包括更深一步研究插入设备检测策略去帮助开发者debug他们的应用程序,和还有偶可能是结合技术进入开发者工具和/或Web Server 底层架构.
在他们的个人blog里面还有更多检测分析工具http://research.microsoft.com/~emrek/
Ajax View 的方式就是在Web Server 机器与客户端浏览器中插入一个server-side proxy,这个代理捕获Web Application的JavaScript代码,就是发送到浏览器和重写代码并插入额外的测试仪器代码.注入测试仪器代码运行在客户端浏览器中的Web Application间隙并能捕获执行,调用图表,程序状态和用户交互信息,提供立即可见的的用户体验.
因为AJAX View 是在一个用户浏览页面时每时动态的重写Web application代码:
1. serve different instrumentation code to different users. This allows us to distribute instrumentation code across many users, spreading the cost of gathering lots of information such that no single user pays a high performance penalty.
2. adapt an instrumentation policy and serve different instrumentation code over time. For example, we can drill-down into performance problems and gather extra context about bugs
下载
http://research.microsoft.com/research/downloads/details/e82e1a27-e500-4e91-85fd-75886242acfc/details.aspx
A. Performance Profiling Walk-Through
1:安装Ajax View 后在开始菜单中打开 Ajax View Proxy
2:Ajax View client-side proxy 运行在 port 8888
3:将你的IE 和 Firefox设置代理为localhost port 8888就OK,
4如何修改IE代理配置:
工具---->Internet Options--->Connections pane---> LAN Settings
就是这里:
![](https://www.cnblogs.com/images/cnblogs_com/worksguo/115331/r_AjAX%20VIEW.jpg)
具体可以看这里:http://research.microsoft.com/projects/ajaxview/AjaxViewUsage-1.htm
5:你访问 http://maps.live.com/ 就能测试.
6现在还可以查看信息聚集.
访问这个http://fakeurl.com/?&AJAXVIEWREQUEST=GET=main.html
就能查看JS Performance Statistics执行统计.
第二就是看是怎样工作的:
Ajax View就是使用获取并重写Web application的JavaScript 代码和向里面注入检测机器码.这里的重写就是由嵌入代理内的更多机器检测代码来控制.
如:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
增加检测码后的为:
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
Conclusion
你Ajax View proxy聚集Web application执行信息,不是修改最开始的Web Application,也不是安装其他的插件,ActiveX控件或Web浏览器.
Ajax View只是当前研究的初期原型,我会在未来为我们的工程考虑几个趋势,包括更深一步研究插入设备检测策略去帮助开发者debug他们的应用程序,和还有偶可能是结合技术进入开发者工具和/或Web Server 底层架构.
在他们的个人blog里面还有更多检测分析工具http://research.microsoft.com/~emrek/