0

我們開發了一個使用SQL Server作爲後端的.NET Web應用程序。現在我們想爲技術支持團隊提供一個監控儀表板應用程序。這個想法是,這個監控應用程序將顯示託管應用程序的Web服務器和持有該數據的數據庫服務器的「健康狀況」的全局圖。這種「健康」措施應該反映每臺機器的工作負載,並且將是一個從我需要確定的某些輸入計算得出的數字(比如說在0到100之間)。IIS和SQL Server的監視儀表板

對於Web服務器,我想必須考慮每個時間單元的HTTP請求,並且可能會消耗帶寬。

對於數據庫服務器,我認爲應該使用每個時間單位的事務,也許應該使用鎖或其他指標或數據庫併發性。

此外,還應考慮其他一些通用輸入,例如CPU負載,內存使用情況和磁盤隊列長度。

應根據需要權衡所有這些因素,以獲得每臺服務器的最終「健康」數字。

編輯。這個想法是,「健康」措施爲技術人員提供了服務器工作負載的全局圖。如果服務器顯示的「健康」較低,技術人員將能夠深入瞭解並查看機器的細節,以查看哪些特定輸入導致低「健康」。

我的問題是:

  1. 你覺得這個 「健康」 的措施是有道理的?
  2. 我正在考慮使用性能計數器來捕獲輸入數據。這是最好的選擇嗎?
  3. 你能爲Web服務器(IIS 7)和數據庫服務器(SQL Server 2008)建議適當的輸入嗎?

謝謝。

回答

1

你覺得這樣的「健康」的措施是有道理的?

不會。有人會問你的單號是否關閉的第一件事是「有什麼問題?」另外,請考慮趨勢分析對於早期錯誤檢測非常重要的事實。

我想使用性能計數器來捕獲 輸入數據。這是最好的選擇嗎?

我認爲這將是一個很好的起點。

您能否提供的Web服務器(IIS 7)和 數據庫服務器(SQL服務器 2008)適當的投入?

這是論壇帖子的主題,答案很大程度上取決於您的應用程序的細節。從廣義上講,您希望查看諸如錯誤條件的頻率,每個子系統吞吐量的某種意義/度量,計算進程外調用頻率超過性能閾值等等。通常是一個好主意目前的數字以及歷史和趨勢。

您可能想看看微軟在這方面的產品:服務中心運營經理(SCOM),以查看他們所做事情的類型。

+0

感謝您的回答,RickNZ。正如我在之前的評論中所說的,我的計劃是將「健康」措施用作全局圖像指示器,但讓技術人員在他們看到健康價值較低的情況下深入瞭解特定機器的細節。我正在編輯我的問題來解釋這一點。 – CesarGon 2009-11-20 14:05:47

+0

試圖使用單個數字的問題的一部分與縮放有關。假設您監控10個子系統,每個子系統有10個點。如果磁盤的性能爲零,則看起來與所有10個以90%執行的子系統相同。如果你想保持簡單,也許只是有一個紅色/綠色壞/好指標,而不是一個數字? – RickNZ 2009-11-21 01:39:48

0

首先,我認爲你正在設計一個不同於你所告訴我們的儀表板,技術支持人員想知道機器是上/下,當出現問題時該怎麼做。

每秒請求和事務對於容量規劃和/或系統和應用程序調優非常有用,而不是技術支持。

此外,我相信一個數字是沒有意義的,並幫助沒有人,因爲87.75%意味着什麼?因此,我相信你希望爲系統管理員和應用程序開發人員提供一個儀表板,這種類型的測量很有意義,可以調整操作系統或知道何時添加新計算機或哪個查詢正在陷入SQL Server。

也就是說,性能計數器已經存儲了大量想要呈現的信息,因此確實有意義。此外,您可以使用SQL Server跟蹤來測量有關查詢的性能數據,不應該不斷運行跟蹤,而是按照定義的時間間隔運行。

現在,如果你真的想爲技術支持的儀表板,兩點式顯示器就足夠了:服務器上/下 - 應用響應/響應

+0

謝謝您的意見。我們的技術支持團隊將需要查看是否一切正常。如果沒有,他們將需要深入研究,看看究竟發生了什麼,以及用什麼機器。我們希望爲他們提供一個「全局圖片」的視圖,讓他們能夠在一個屏幕上看到整個服務器陣列(因此我提出了總體「健康」措施)。 – CesarGon 2009-11-20 02:00:15

+0

查看nagios。簡單的狀態測量對於技術支持就足夠了。綠色好的,黃色的東西了,紅色一些嚴重的問題。一個數字是無用的 – 2009-11-20 17:38:19

0

SQL Server 2008自帶的性能收集和數據倉庫,請參閱SQL Server 2008 Data Collections and the Management Data Warehouse。另外SQL 2005也有類似的Performance Dashboard。我並不是說你應該將這些用作你的儀表板(儘管你可以),但是你應該看看這兩個SQL儀表板,看看MS團隊認爲重要的東西放在儀表板上。