了解暫時性錯誤

已完成

在本節中,我們會針對 Azure Cosmos DB 服務無法使用的例外狀況,進行診斷和疑難排解。 當要求傳回狀態碼 503 時,我們通常能夠識別出此例外狀況。 這表示作業無法完成,因為服務無法使用。 有數個原因會導致引發此例外狀況。 可能會因為網路連線能力或服務可用性問題而傳回此狀態碼。 在大部分情況下,您可以放心重試作業,而且問題可能已獲得解決。 如果問題持續發生,您必須連絡 Azure 支援。 讓我們評估傳回此狀態碼時的三個主要案例。

所需的連接埠遭到封鎖

確認已針對 SQL API 啟用下列連接埠。

連線模式 支援的通訊協定 支援的 SDK API/服務連接埠
閘道 HTTPS 所有 SDK SQL (443)
直接 TCP .NET SDK、Java SDK 使用公用/服務端點時:10000 到 20000 範圍中的連接埠。 使用私人端點時:0 到 65535 範圍中的連接埠

用戶端暫時性連線問題

有暫時性連線能力問題而造成逾時的時候,就會發生此例外狀況。 與此案例相關的堆疊追蹤會包含 TransportException 錯誤。 此錯誤的樣貌可能會是:

TransportException: A client transport error occurred: The request timed out while waiting for a server response. 
(Time: xxx, activity ID: xxx, error code: ReceiveTimeout [0x0010], base error: HRESULT 0x80131500

此錯誤應該像要求逾時錯誤 (狀態碼 408) 一樣地進行疑難排解。

服務中斷

請查看 Azure 狀態頁面,確認目前是否有問題發生。