由於今天出於某些未知原因並且僅在大約10分鐘內,我們的一個Azure Web應用程序發生了與Azure SQL數據庫可用性有關的崩潰。該網站的應用程序給YSOD說「等待操作超時。」 Elmah顯示了其他錯誤,例如「登錄失敗」和「當前命令發生嚴重錯誤,應該丟棄結果(如果有的話)。」Azure數據庫上的「等待操作超時」故障排除
看着應用程序和數據庫負載我真的不明白爲什麼。數據庫被設置爲S0級別,我們將其增加到S1,但即使這樣也很奇怪。我們很少有數據庫上的DTU利用率超過50%,Web應用程序達到35個同時請求。總的來說,它看起來不像是一個超出S0數據庫功能的負載。
這一切都很糟糕,但是最大的問題是我該如何解決這個問題?這顯然是數據庫問題,但考慮到低負載,我不知道爲什麼。我當然不希望升級到這種尺寸的應用程序的每月300美元的高級水平。
有沒有日誌記錄我可以設置這個呢?回顧發生了什麼的一些方法,並就如何防止它再次發生得出明確的結論?
偶爾會發生這種情況。我看不出爲什麼。我配置了一個RetryPolicy,並且使用默認的SqlConnetion ConnectionTimeout(在連接字符串中)似乎有所幫助。最終,我不認爲MS保證與db的連接總是會被創建,並且你無法阻止它再次發生。 –
奇怪的是,該應用程序一直運行的問題很少,直到大約3/17,在這一點上,我開始每天數十次重複發生間歇性問題。 –
另外有趣的是,在某些瀏覽器上,該問題將持續發生,直到該網站的cookies被清除。這聽起來像它可能與ServiceStack有關,以及它如何處理緩存。 –