CloudWatch 支援的通訊協定FAQs - Amazon CloudWatch

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

CloudWatch 支援的通訊協定FAQs

CloudWatch 現在支援兩個額外的通訊協定:AWS JSON 1.1Smithy RPC v2 CBOR。這些通訊協定的效能比 SDKs 和 CLIs. AWS SDK 目前使用的 AWS 查詢通訊協定更好。SDK 會優先考慮每種語言效能最佳的通訊協定。 AWS SDKs

什麼是 AWS JSON 通訊協定,它與現有的 CloudWatch API 請求和回應有何不同?

JSON 是用於異質系統之間通訊的最廣泛使用和接受的佈線方法之一。CloudWatch 使用 JSON 做為媒體,在 AWS SDK 用戶端 (例如 Java、Python、Golang、JavaScript) 和 CloudWatch 伺服器之間進行通訊。CloudWatch API 操作的 HTTP 請求接受 JSON 格式的輸入。系統會執行 CloudWatch 操作,並以 JSON 格式將執行回應分享給 SDK 用戶端。與 AWS 查詢相比,JSON 在用戶端和伺服器之間傳輸資料更有效率。

  • CloudWatch AWS JSON 通訊協定充當 CloudWatch 用戶端和伺服器之間的中介裝置。

  • 伺服器不了解建立 CloudWatch 操作的程式設計語言,但了解 AWS JSON 通訊協定。

  • CloudWatch AWS JSON 通訊協定使用 CloudWatch 用戶端和伺服器之間的序列化 (將物件轉換為 JSON 格式) 和還原序列化 (將 JSON 格式轉換為物件)。

什麼是 Smithy RPC v2 CBOR 通訊協定,它與現有的 CloudWatch API 請求和回應有何不同?

簡潔二進位物件表示法 (CBOR) 是一種著重於效率和彈性的資料格式。其主要設計目標包括非常小的程式碼大小、精簡的訊息大小,以及無版本的可擴展性。Smithy RPC v2 CBOR 是 Amazon 建立的通訊協定,以這些優勢為基礎,實現更有效率的資料傳輸。RPC V2 CBOR 實作二進位編碼,而不是 JSON 的文字編碼,減少承載的大小和序列化所花費的時間。

  • CloudWatch RPC v2 CBOR 通訊協定充當 CloudWatch 用戶端和伺服器之間的中介裝置。

  • 伺服器不了解建立 CloudWatch 操作的程式設計語言,但了解 RPC v2 CBOR 通訊協定。

  • CloudWatch RPC v2 CBOR 通訊協定使用 CloudWatch 用戶端和伺服器之間的序列化 (將物件轉換為 CBOR 格式) 和還原序列化 (將 CBOR 格式轉換為物件)。

如何開始使用較新的 CloudWatch 通訊協定?

新的通訊協定現在可在 SDKs 的公有預覽版本中使用。您可以使用下列指示下載SDKs。

注意

下列 CloudWatch SDKs 預覽版本中存在下列特定問題。使用此預覽開發套件表示這些問題可能會影響您的整合。我們計劃在最終版本之前解決這些問題。

  • 影響所有 SDKs – 預覽版本會從清單中移除結尾的 null 值。在最終版本中,這些值將正確序列化

  • Java SDK v1 專用 – 預覽版本不會序列化空白清單。在最終版本中,空白清單將正確序列化

SDK 用戶端通訊協定支援
語言 SDK 用戶端儲存庫 SDK 下載連結 SDK 安裝指示 通訊協定
C++ aws/aws-sdk-cpp 下載連結 安裝說明 AWS JSON 1.1
Golang 2.x aws/aws-sdk-go-v2 下載連結 安裝說明 RPC v2 CBOR
Java 1.x aws/aws-sdk-java 下載連結 安裝說明 AWS JSON 1.1
Java 2.x aws/aws-sdk-java-v2 下載連結 安裝說明 RPC v2 CBOR
JavaScript v3.x aws/aws-sdk-js-v3 下載連結 安裝說明 AWS JSON 1.1
.NET aws/aws-sdk-net 下載連結 安裝說明 AWS JSON 1.1
PHP aws/aws-sdk-php 下載連結 安裝說明 AWS JSON 1.1
Python-boto3 boto/boto3 下載連結 安裝說明 AWS JSON 1.1
awscli AWS CLI v1 成品 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 來源分佈 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 來源分佈已分離 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Windows MSI 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux X86 Docker 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux X86 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux X86 安裝程式已分離 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux ARM Docker 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux ARM 下載連結 安裝說明 AWS JSON 1.1
AWS CLI v2 Linux ARM 安裝程式已分離 下載連結 安裝說明 AWS JSON 1.1
Ruby aws/aws-sdk-ruby 下載連結 安裝說明 AWS JSON 1.1
Powershell 下載連結 安裝說明 AWS JSON 1.1
Rust awslabs/aws-sdk-rust 下載連結 安裝說明 RPC v2 CBOR
Swift awslabs/aws-sdk-swift 下載連結 安裝說明 RPC v2 CBOR
Kotlin awslabs/aws-sdk-kotlin 下載連結 安裝說明 RPC v2 CBOR

為我的 CloudWatch 工作負載啟用這些新通訊協定有哪些風險?

如果您使用 AWS SDK 的自訂實作或自訂用戶端和 AWS SDK 的組合來與產生以 AWS 查詢為基礎 (又稱為 XML 類型) 回應的 CloudWatch 互動,則可能與 AWS JSON 或 CBOR 通訊協定不相容。如果您遇到任何問題,請聯絡 AWS Support。

如果我已經使用最新的 AWS SDK 版本,但我的開放原始碼解決方案不支援 JSON 或 CBOR,該怎麼辦?

您必須將 SDK 版本變更為先前的版本。如需如何開始使用較新的 CloudWatch 通訊協定?如何開始使用較新的 CloudWatch 通訊協定,並選取低於列出的版本,請參閱 。如果您將 AWS SDK 變更為舊版,CloudWatch APIs將使用 AWS 查詢通訊協定。

CloudWatch APIs 中使用的 AWS JSON 和 CBOR 通訊協定支援哪些區域

CloudWatch 在所有可使用 CloudWatch AWS 的區域中支援 AWS JSON 和 CBOR 通訊協定。

使用較新的通訊協定升級至 CloudWatch 的指定 AWS SDK 版本時,可以預期哪些延遲改善?

與 AWS 查詢相比,JSON 和 CBOR 都提供介於 50% 到 80% 之間的延遲改善。用戶端的 CBOR 快 50%。這兩種通訊協定的網路頻寬使用效率都會提高 10-20%。

AWS 查詢通訊協定是否會棄用?

AWS 查詢通訊協定將繼續受到支援。只要 AWS 軟體開發套件版本已設定 CloudWatch 的 AWS JSON 通訊協定入門中列出的任何先前版本,您就可以繼續使用 AWS 查詢通訊協定。

哪裡可以找到有關 AWS JSON 和 Smithy RPC v2 CBOR 通訊協定的詳細資訊?

您可以在 Smithy 文件中找到 JSON AWS 1.1 通訊協定中 JSON 通訊協定的詳細資訊。

如需 CloudWatch API 請求的詳細資訊,請參閱CloudWatch API 參考指南》中的提出 API 請求