上一回介紹瞭如何經過WMI接口監控服務器性能,但服務器運行正常不等於運行的網站能正常打開,所以還有必要對網站的運行狀況進行監控。html
在C#中,發起一個HTTP請求並返回其響應是很是簡單的。windows
1 HttpWebRequest request = WebRequest.Create(uri) as HttpWebRequest; 2 HttpWebResponse response = request.GetResponse() as HttpWebResponse; 3 bool result = response.StatusCode == HttpStatusCode.OK; 4 response.Close(); 5 return result;
若是result返回true,那麼就能夠認爲網站能正常訪問。服務器
然而,有很多網站是須要用戶登陸的,好比本人平時維護的各種內部網站都是跟windows域用戶綁定,實現單點登陸。這樣就須要用到CredentialCache類。dom
CredentialCache類存儲多個Internet 資源的憑據。須要訪問多個資源的應用程序可將這些資源的憑據存儲在 CredentialCache 實例中,該實例在須要時向Internet資源提供適當的憑據集。性能
所以咱們建立一個CredentialCache對象,並將該對象賦給HttpWebRequest.Credentials屬性。網站
1 CredentialCache credentialCache = new CredentialCache(); 2 credentialCache.Add(new Uri(url), "NTLM", new NetworkCredential(userName, password, domain)); 3 request.Credentials = credentialCache;
這樣就能模擬用戶向網站發起請求並返回其響應了。url