SharePoint2010 开发人员面板
(这一辑是有关开发的内容)
在开发SharePoint 2007应用程序的时候,性能是我们很可能面临的一大挑战。我们最不希望看到的,就是用户刷新一个页面之后,需要等上好几秒钟(或更长时间),才能看到页面缓慢的打开。如果真的遇到性能上的问题,那么在进行性能优化之前,第一个需要了解的事情,就是“系统性能瓶颈在哪里?”也就是说,如果不能找到系统运行缓慢的原因,那么性能优化也就无从着手了。
找到系统瓶颈的工具有很多,从Windows Server内置的性能监控器,到SQL Profile、CLR Profile等等,都是非常有用的工具。而对于一个SharePoint页面,似乎则没有什么特别好用的恶工具,能够快捷明了的告诉开发人员,页面上的各个部件对于性能,都会造成什么样的印象,都各自占用了多长的运行周期。
开发人员面板(Developer Dashboard)是在SharePoint 2010中一个新增的功能。它是一个位于页面下面的信息面板,能直接显示出当前页面上的各个组件的运行时间、当前页面的运行会产生哪些数据库调用、每个数据库调用又会占用多少时间等等信息。如果发现某个页面运行缓慢,那么通过开发人员面板,开发人员就可以迅速找到导致页面慢如蜗牛的罪魁祸首了。
下面是SharePoint 2010工作组网站默认首页的开发人员面板:
其中包含了页面上各个控件的执行时间:
当前Web请求的一些有用信息:
当前页面所引发的所有数据库的调用,以及它们的执行时间:
点击每个数据库调用,还能看到这个数据库调用的详细信息,包括所执行的SQL语句全文、调用堆栈、IO Stats等信息:
开发人员面板是一个服务器场级别的设置,它可以在三个状态间进行切换:关闭(默认状态)、打开、按需打开。当它处于打开状态时,每个页面(包括网站页面和应用程序页面)的下方都会显示开发人员面板。当它处于按需打开状态时,每个页面的右上角会有一个管理员可见的小图标,管理员可以点击这个小图标切换显示或关闭开发人员面板。
更改服务器场开发人员面板设置的方法是使用stsadm.exe命令行指令:
上面的指令中,-pv参数的值可以是on、off、ondemand,分别表示打开、关闭、按需打开。
如果愿意,你还可以在代码中更改服务器场开发人员面板的设置:
不过要注意的是,由于SharePoint的安全限制,上面的代码只能运行在管理中心网站的页面上,或是独立的Windows应用程序(比如命令行程序)中。如果试图在普通网站的页面上运行这些代码(比如将代码放到一个Web Part中,然后将其部署到一个工作组网站页面上),将会抛出SecurityException。