我有一個基於C#的應用程序,它在基於SQL Server 2008 R2的數據庫實例上執行不同的操作。監視SQL性能和加載
這是情景:
- 有一個單獨的SQL實例。
- 有多個數據庫(大約50個)。
- 應用程序執行不同的操作,包括IO和CPU操作(在SQL服務器上)。
- 代碼是多線程的,這意味着多個線程一次訪問SQL實例。
- 在與應用程序服務器相同的計算機上,SQL服務器不是。
現在,我遇到了SQL成爲瓶頸(IO和CPU)的問題,我希望能夠讓進程線程檢查SQL在啓動之前是否「過於佔用」一個新的過程,如果它被佔用太多,推遲一段時間過程並稍後再檢查。
可以使用簡單/基本SQL查詢接收有關SQL實例當前負載的信息嗎? CPU負載如使用率? IO負載如磁盤r/w隊列?
任何幫助,將不勝感激。
吉拉德。
您是否使用過SQL Profiler來識別造成瓶頸的原因?優化服務器的工作可能比管理應用程序的負載要好。 – Tony