匯出 (0) 列印
全部展開

設定 Blob 服務作業的逾時值

更新日期: 2011年10月

Blob 服務應用程式開發介面的每個呼叫會包含逾時間隔,其使用方式有兩種。

  • 如果處理要求的時間超過逾時間隔,Blob 服務會傳回錯誤。

  • 如果使用儲存體用戶端,當其在逾時間隔內未從服務收到 HTTP 狀態碼回應時,會擲回例外狀況。逾時只會用來接收狀態碼,而不會用來接收訊息主體或完成用戶端的資料傳輸。

Blob 服務 REST 呼叫的預設逾時間隔為 30 秒。Blob 服務作業的最大逾時間隔也是 30 秒,但有些例外狀況 (如下所示)。Blob 服務將較長的逾時縮短為 30 秒。儲存體用戶端預設會為大多數的 Blob 服務呼叫,指定 90 秒的逾時。如果 Blob 服務在 30 秒內無法準備適當的回應,則會傳回錯誤,然後儲存體用戶端會等候 90 秒,並在未收到回應時擲回例外狀況。

您可以使用 Microsoft.WindowsAzure.StorageClient.BlobRequestOptions.Timeout 設定單一 Blob 要求的逾時間隔,並使用 Microsoft.WindowsAzure.StorageClient.CloudBlobClient.Timeout 設定所有 Blob 儲存體用戶端的預設逾時間隔。

下列範例 REST URI 將 列出容器 作業的逾時間隔設為 20 秒:

GET https://myaccount.blob.core.windows.net?comp=list&timeout=20

下列 C# 範例將儲存體用戶端的逾時設為 5 分鐘,以下載單一 Blob:

BlobRequestOptions largeBlobDownloadOptions = new BlobRequestOptions()
{
 Timeout = TimeSpan.FromMinutes(5) // Larger timeout for larger file
};
blob.DownloadToFile(largeBlobDownloadOptions);

下列作業為標準 30 秒逾時間隔的實作例外狀況:

  • 若為取得 Blob、取得頁面範圍或取得區塊清單等呼叫,每 MB 所允許的完成時間為 2 分鐘。如果每 MB 平均超過 2 分鐘,則作業會逾時。

  • 若為寫入 Blob、寫入區塊或寫入分頁等呼叫,每 MB 所允許的完成時間為 10 分鐘。如果每 MB 平均超過 10 分鐘,則作業會逾時。

  • 寫入區塊清單的最大逾時為 60 秒。

  • 若要重新建立最近刪除的容器,您必須先刪除其所有 Blob。根據容器中所儲存的資料量,完成刪除作業可能需要幾秒鐘到幾分鐘的時間。如果您在此清除期間嘗試建立相同名稱的容器,您的呼叫會立即傳回錯誤。

另請參閱

Microsoft 正展開一份線上問卷調查,了解您對於 MSDN 網站的看法。 如果您選擇參加,您離開 MSDN 網站時即會顯示線上問卷調查。

您是否想要參加?
顯示:
© 2014 Microsoft