

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 了解 Amazon QLDB 中驅動程式的重試政策
<a name="driver-retry-policy"></a>

**重要**  
支援終止通知：現有客戶將可以使用 Amazon QLDB，直到 07/31/2025 的支援結束為止。如需詳細資訊，請參閱[將 Amazon QLDB Ledger 遷移至 Amazon Aurora PostgreSQL](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/)。

Amazon QLDB 驅動程式使用重試政策，透過透明重試失敗的交易來處理暫時性例外狀況。這些例外狀況，例如 `CapacityExceededException`和 `RateExceededException`，通常會在一段時間後自行修正。如果在適當的延遲後重試失敗但發生例外狀況的交易，則可能會成功。這有助於改善使用 QLDB 的應用程式穩定性。

**Topics**
+ [

## 可重試的錯誤類型
](#driver-retry-policy.retryable-errors)
+ [

## 預設重試政策
](#driver-retry-policy.default)

## 可重試的錯誤類型
<a name="driver-retry-policy.retryable-errors"></a>

只有在交易中的操作期間發生下列任何例外狀況時，驅動程式才會自動重試交易：
+ [CapacityExceededException](driver-errors.md) – 當請求超過分類帳的處理容量時傳回。
+ [InvalidSessionException](driver-errors.md) – 當工作階段不再有效或工作階段不存在時傳回。
+ [LimitExceededException](driver-errors.md) – 如果超過作用中工作階段數量等資源限制，則傳回。
+ [OccConflictException](concurrency.md) – 當交易因*樂觀並行控制* (OCC) 驗證階段失敗而無法寫入日誌時傳回。
+ [RateExceededException](driver-errors.md) – 當請求速率超過允許的輸送量時傳回。

## 預設重試政策
<a name="driver-retry-policy.default"></a>

重試政策包含重試條件和退避策略。重試條件會定義何時應重試交易，而退避策略則會定義重試交易前的等待時間。

建立驅動程式執行個體時，預設重試政策會指定 最多重試四次，並使用指數退避策略。指數退避策略使用最小延遲 10 毫秒，最大延遲 5000 毫秒，抖動相等。如果交易無法在重試政策中成功遞交，我們建議您再次嘗試交易。

指數退避的概念是針對連續的錯誤回應，在重試之間使用逐漸較長的等待時間。如需詳細資訊，請參閱 AWS 部落格文章[指數退避和抖動](https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/)。