我们开发了一个使用Server作为后端的.NET web应用程序。现在我们想为技术支持团队提供一个监控仪表板应用程序。其想法是,这个监控应用程序将显示托管应用程序的web服务器和保存数据的数据库服务器的“健康状况”。这个“健康”度量应该反映每台机器的工作负载,并且是一个数字(假设在0到100之间),它是根据我需要确定的一些输入计算的。
对于web服务器,我设想必须考虑每个时间单位的HTTP请求,也许还需要消耗带宽。
对于数据库服务器,我认为应该使用每个时间单位的事务,可能是锁或其他指示符或数据库并发。
此外,还应考虑其他一些通用输入,如CPU负载、内存使用情况和磁盘队列长度。
所有这些因素都应根据需要进行权衡,以获得每个服务器的最终“健康”数字。
编辑.其思想是,“健康”度量为技术人员提供了服务器工作负载的全局视图。如果服务器出现的“健康度”较低,技术人员将能够向下钻取并查看机器的详细信息,以查看哪些特定的输入导致低“健康”。
我的问题是:
谢谢。
发布于 2009-11-20 10:32:13
你认为这种“健康”措施有意义吗?
不是的。如果你的单个号码是关的,别人会问的第一件事是“出什么问题了?”同时,考虑到趋势分析对于早期错误检测是非常重要的。
我正在考虑使用性能计数器来捕获输入数据。这是最好的选择吗?
我认为这将是一个很好的起点。
您能建议web服务器(IIS 7)和数据库服务器( Server 2008)的适当输入吗?
这是一个论坛帖子的一个大主题,答案在很大程度上取决于你的应用程序的细节。广义地说,您想要查看错误条件的频率、对每个子系统的吞吐量的某种感觉/度量、进程外调用超过性能阈值的频率等。通常显示当前数字以及历史和趋势是一个好主意。
您可能需要查看Microsoft在以下领域的产品:服务中心操作管理器(,SCOM),以了解它们所做的事情的类型。
发布于 2009-11-19 22:28:31
首先,我认为您正在设计一个不同于您所告诉我们的仪表板,技术支持部门想知道机器是否处于上下运转状态,以及遇到问题时该怎么办。
每秒的请求和事务对于容量规划和/或系统和应用程序调优是有用的,而不是对于技术支持。
此外,我相信一个数字是没有道理的,也没有帮助任何人,因为87,75%意味着什么?
因此,我相信您希望为sysadmins和应用程序开发人员提供一个仪表板,在那里这种测量方式是有意义的,可以对操作系统进行调优,或者知道什么时候应该添加新机器或哪个查询陷入了SQL Server的困境。
也就是说,性能计数器已经存储了很多您想要显示的信息,因此这是有意义的。此外,还可以使用Server跟踪来度量有关查询的性能数据,跟踪不应经常运行,而应按规定的间隔运行。
现在,如果您真的想要一个用于技术支持的仪表板,两种类型的监视器就足够了:服务器上/下-应用程序响应/不响应。
发布于 2009-11-20 23:13:12
Server 2008附带了性能收集和数据仓库,请参阅Server 2008 数据采集与管理数据仓库。另外,SQL 2005也有类似的性能仪表板。我并不是说您必须使用这些作为您的仪表板(尽管您可以),但是您应该查看这两个SQL仪表板,看看MS团队认为在仪表板中放什么重要。
https://stackoverflow.com/questions/1766966
复制相似问题