Q
檢查網站是否過載
1
A
回答
4
一般來說,這通常是一個負載平衡器的設置,而不是你直接寫入你的應用程序的東西。負載均衡器偶爾會檢查您的站點的服務器運行狀況,如果檢測到它們不可用或具有高延遲等,則會將流量路由到其他服務器/站點。
將它編碼到您的應用程序中意味着如果您的服務器負載過重並且應用程序速度變慢,那麼檢查它是否過載的代碼也會變慢。如果這是有道理的。
編輯: 爲了擴大這是如何與負載均衡器做了一些,你一般會在你的應用程序頁面運行的一些基本檢查,並返回一個HTTP 200,如果一切正常,或HTTP 503如果事情不好。然後,負載平衡器會在您的服務器上點擊該URL並檢查響應代碼以查看它是否正常運行(它檢查的頻率是您可以配置的)。如果它起來,很酷。如果發生故障,它將開始在其他地方發送流量。
由於您控制了檢查頁面,因此您可以根據需要編寫支票。通常你會在那裏進行一些快速的健全檢查。例如嘗試連接到數據庫,如果它給你一個「連接太多」的錯誤,那麼返回一個503,負載平衡器會知道你已經超負荷。
如果您只關心數據庫情況而不關心服務器負載或延遲等情況,只需在連接到數據庫時捕獲任何錯誤,並在發生此情況時將用戶重定向到靜態頁面,即可獲得類似的結果。例如,
try
{
$dbh = new PDO("mysql:host=localhost;dbname=whatever", $user, $pass);
}
catch (PDOException $e)
{
header("Location: /site_overloaded_message.html"); exit();
}
+1
它確實有道理。 –
相關問題
- 1. 如何檢測網站是否超載?
- 2. 檢查網站是否可通過ip通過php
- 3. 檢查網站是否被的.htaccess
- 4. 捲曲檢查是否在網站上
- 5. 檢查網站是否可用
- 6. 檢查網站上是否存在cookie
- 7. 檢查網站是否存在
- 8. 檢查網站是否有證書C#
- 9. 檢查SharePoint網站是否存在
- 10. 檢查網站是否在線與AS3
- 11. 檢查網站是否可聯繫
- 12. 檢查網站是否在線
- 13. 檢查是否存在SharePoint網站
- 14. Swift - 檢查網站是否訪問
- 15. StageWebView AS3 - 檢查加載網站是否失敗?
- 16. 檢查網站是否可以加載或不在WebView中
- 17. Ruby代碼來檢查網站是否有網站地圖
- 18. 檢查通過C#登錄網站是否成功
- 19. 檢查是否有人通過鼠標移動離開網站
- 20. 如何通過WiX 3.5檢查是否存在IIS 7網站?
- 21. 檢查是否可以通過JavaScript訪問遠程網站
- 22. 檢查網頁是否完全加載
- 23. 檢查URL是否通過iframe加載
- 24. 如何檢查網站地圖是否包含一些網址
- 25. 檢查是否卸載
- 26. 檢查UIWebView是否加載
- 27. 檢查如果用戶通過網站
- 28. 如何檢測您的網站是否在SFSafariViewController上加載
- 29. 如何檢查css是否得到正確加載或不在magento網站
- 30. 檢查用戶是否是附近路線檢查站與GPS
我們應該知道每個站點是如何做到這一點的?也許有一個「areyouoverloaded.com」網站,直到他們停止響應,在這一點上,他們通過美國郵政優先郵件派遣一封信,通知網站管理員,他們應該登錄到系統,並將他們的頁面改爲超載版。或者可能有一些代碼監視平均SQL查詢持續時間,並在執行時間超過0.5s時自動切換到超載狀態 –
對不起,您看到@Marc B的日子不好,並且不知道我正在進入這裏的雷區。我只是問一個簡單的問題。標籤應該提供足夠的上下文。如果沒有傳統的方式,那麼就說出來。 –
對於一個擁有你的個人資料的用戶來說,這是一個無知的問題你不覺得嗎?如果你能提供一個例子,它會有所幫助。 – samayo