

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

# 讓應用程式對 EventBridge 中的全域端點具有區域容錯能力
<a name="eb-global-endpoints"></a>

您可以透過 Amazon EventBridge 全球端點提高應用程式的可用性。全域端點可讓應用程式區域容錯而無需增加額外費用。若要開始，請將 Amazon Route 53 運作狀態檢查指派給端點。啟動容錯移轉時，運作狀態檢查會報告「狀況不良」狀態。在容錯移轉初始化的幾分鐘內，所有自訂[事件](eb-events.md)[都會路由至次要區域中的事件匯流排](eb-event-bus.md)，並由該事件匯流排處理。一旦運作狀態檢查報告為「狀況良好」狀態，事件就會由主要區域中的事件匯流排處理。

當您使用全域端點時，您可以啟用[事件複寫](#eb-ge-event-replication)。事件複寫會使用受管規則，將所有自訂事件傳送至主要和次要區域中的事件匯流排。

**注意**  
如果您使用自訂匯流排，則需要在每個區域中使用相同名稱且相同帳戶中的自訂匯流排，以便容錯移轉正常運作。

## 復原時間與復原點目標
<a name="eb-ge-rpo-rto"></a>

復原時間點目標 (RTO) 是次要區域在失敗後開始接收事件所需的時間。針對 RTO，此時間包括觸發 CloudWatch 警示和更新 Route 53 運作狀態檢查狀態的時間段。復原點目標 (RPO) 是在失敗期間保持未處理之資料的度量。針對 RPO，時間包括未複製到次要區域並停留在主要區域中的事件，直到服務或區域復原為止。使用全球端點時，如果您遵循我們的警示設定規範指引，您可以預期 RTO 和 RPO 為 360 秒，最長 420 秒。

## 複寫事件
<a name="eb-ge-event-replication"></a>

在次要區域中以非同步方式處理事件。這表示不能保證在兩個區域中同時處理事件。觸發容錯移轉時，事件會由次要區域處理，並在主要區域可用時由主要區域進行處理。啟用事件複寫會增加您的每月成本。如需詳細資訊，請參閱 [Amazon EventBridge 定價](https://aws.amazon.com/eventbridge/pricing)。

建議您在設定全域端點時啟用事件複寫，原因如下：
+ 事件複寫可協助您確認已正確設定全域端點。這有助於確保您在容錯移轉的情況下得到保障。
+ 需要事件複寫，才能從容錯移轉事件自動復原。如果您沒有啟用事件複寫，您必須手動將 Route 53 運作狀態檢查重設為「狀況良好」，事件才會回到主要區域。

### 複製的事件承載
<a name="eb-ge-event-replication-ep"></a>

以下是複製的事件承載的範例。

**注意**  
針對 `region`，會列出事件複製來源的「區域」。

```
{
    "version": "0",
    "id": "a908baa3-65e5-ab77-367e-527c0e71bbc2",
    "detail-type": "Test",
    "source": "test.service.com",
    "account": "0123456789",
    "time": "1900-01-01T00:00:00Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:events:us-east-1:0123456789:endpoint/MyEndpoint"
    ],
    "detail": {
        "a": "b"
    }
}
```

## 使用 AWS SDK 處理全域端點
<a name="eb-ge-sdk-update"></a>

**注意**  
即將推出 C\+\+ 支援。

使用 AWS SDK 搭配全域端點時，請記住下列事項：
+ 您需要為特定 SDK 安裝 AWS 通用執行期 (CRT) 程式庫。如果您沒有安裝 CRT，您會看到一則例外狀況訊息，指出需要安裝的項目。如需詳細資訊，請參閱下列內容：
  + [AWS 通用執行期 (CRT) 程式庫](https://docs.aws.amazon.com/sdkref/latest/guide/common-runtime.html)
  + [awslabs/aws-crt-java](https://github.com/awslabs/aws-crt-java)
  + [awslabs/aws-crt-nodejs](https://github.com/awslabs/aws-crt-nodejs)
  + [awslabs/aws-crt-python](https://github.com/awslabs/aws-crt-python)
+ 建立全域端點之後，您需要將 `endpointId` 和 `EventBusName` 新增至您使用的任何 `PutEvents` 呼叫中。
+ 全域端點支援簽章版本 4A。這個版本的 SigV4 允許為多個 AWS 區域簽署請求。這對於可能導致來自數個區域之一的資料存取的 API 操作非常有用。使用 AWS SDK 時，您會提供登入資料，而全域端點的請求將使用 Signature 第 4A 版，而不需要其他組態。如需 SigV4A 的詳細資訊，請參閱《AWS 一般參考》**中的[簽署 AWS API 請求](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html )。

  如果您從全域 AWS STS 端點 (sts.amazonaws.com：//) 請求臨時登入資料， AWS STS 則提供預設不支援 SigV4A 的登入資料。如需詳細資訊，請參閱*AWS Identity and Access Management 《 使用者指南*》中的[AWS STS 在 AWS 區域中管理](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) 。

## 可用的區域
<a name="eb-ge-avail-regions"></a>

以下區域支援端點。
+ 美國東部 (維吉尼亞北部)
+ 美國東部 (俄亥俄)
+ 美國西部 (加利佛尼亞北部)
+ 美國西部 (奧勒岡)
+ 加拿大 (中部)
+ 歐洲 (法蘭克福)
+ 歐洲 (愛爾蘭)
+ 歐洲 (倫敦)
+ 歐洲 (米蘭)
+ 歐洲 (巴黎)
+ 歐洲 (斯德哥爾摩)
+ 亞太地區 (孟買)
+ 亞太區域 (大阪)
+ 亞太區域 (首爾)
+ 亞太區域 (新加坡)
+ 亞太地區 (雪梨)
+ 亞太地區 (東京)
+ 南美洲 (聖保羅)