监视IIS和SQL Server的仪表板

时间:2009-11-19 22:15:47

标签: performance sql-server-2008 iis-7 measurement performancecounter

我们开发了一个使用SQL Server作为后端的.NET Web应用程序。现在我们想为技术支持团队提供监控仪表板应用程序。我们的想法是,这个监控应用程序将显示托管应用程序的Web服务器和保存数据的数据库服务器的“运行状况”的全局图。这个“健康”度量应该反映每台机器的工作量,并且可以是我需要确定的一些输入计算的数字(介于0到100之间)。

对于Web服务器,我想必须考虑每个时间单位的HTTP请求,并且可能消耗带宽。

对于数据库服务器,我认为应该使用每个时间单位的事务,也许应该使用锁或其他指标或数据库并发。

此外,还应考虑其他一些通用输入,例如CPU负载,内存使用和磁盘队列长度。

应根据需要权衡所有这些因素,以获得每个服务器的最终“健康”数字。

修改即可。我们的想法是,“健康”措施为技术人员提供服务器工作负载的全局图片视图。如果服务器显示“健康状况”较低,技术人员将能够向下钻取并查看计算机的详细信息,以查看导致“健康状况”较低的特定输入。

我的问题是:

  1. 你认为这种“健康”措施有意义吗?
  2. 我正在考虑使用性能计数器来捕获输入数据。这是最好的选择吗?
  3. 您能为Web服务器(IIS 7)和数据库服务器(SQL Server 2008)建议适当的输入吗?
  4. 感谢。

3 个答案:

答案 0 :(得分:1)

  

你认为这种“健康”措施有意义吗?

没有。有人会问你的单号是否关闭的第一件事是“出了什么问题?”另外,考虑趋势分析对早期错误检测非常重要的事实。

  

我正在考虑使用性能计数器来捕获   输入数据。这是最好的选择吗?

我认为这将是一个很好的起点。

  

您能否为Web服务器(IIS 7)和建议提供适当的输入   数据库服务器(SQL Server   2008)?

这是论坛帖子的一个重要主题,答案在很大程度上取决于您的应用程序的详细信息。从广义上讲,您需要查看错误条件的频率,每个子系统的吞吐量的某种感知/度量,进程外调用的频率超过性能阈值等等。显示通常是一个好主意。当前数字以及历史和趋势。

您可能希望了解Microsoft在此领域的产品:服务中心运营经理(SCOM),以查看他们所做事情的类型。

答案 1 :(得分:0)

首先,我认为您正在设计一个不同于您告诉我们的仪表板,技术支持人员想知道机器是否上升/下降以及出现问题时该怎么做。

每秒请求和事务对于容量规划和/或系统和应用程序调整很有用,而不是技术支持。

另外,我认为单个数字毫无意义并且无人帮助,因为87,75%意味着什么?

所以,我相信你想要一个系统管理员和应用程序开发人员的仪表板,这种类型的测量是有意义的,调整操作系统或知道何时添加新机器或哪个查询正在阻碍SQL Server。

也就是说,性能计数器已经存储了您想要呈现的大部分信息,因此确实有意义。此外,您可以使用SQL Server跟踪来测量有关查询的性能数据,不应该按照定义的时间间隔不断运行跟踪。

现在,如果你真的想要一个技术支持的仪表板,两种类型的监视器就足够了:服务器上/下 - 应用程序响应/无响应

答案 2 :(得分:0)

SQL Server 2008附带了一个开箱即用的性能集合和数据仓库,请参阅SQL Server 2008 Data Collections and the Management Data Warehouse。 SQL 2005也有类似的Performance Dashboard。我并不是说你应该使用这些作为你的仪表板(尽管你可以),但你应该看看这两个SQL仪表板,看看MS团队认为重要的是放在仪表板中。