本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
用戶端組態
在 1.x 中,透過在用戶端或用戶端建置器上設定ClientConfiguration執行個體來修改 SDK 用戶端組態。在 2.x 版中,用戶端組態會分成個別的組態類別。使用不同的組態類別,您可以為非同步用戶端與同步用戶端設定不同的 HTTP 用戶端,但仍使用相同的ClientOverrideConfiguration類別。
範例 1.x 版中的用戶端組態
AmazonDynamoDBClientBuilder.standard() .withClientConfiguration(clientConfiguration) .build()
範例 2.x 版中的同步用戶端組態
ProxyConfiguration.Builder proxyConfig = ProxyConfiguration.builder(); ApacheHttpClient.Builder httpClientBuilder = ApacheHttpClient.builder() .proxyConfiguration(proxyConfig.build()); ClientOverrideConfiguration.Builder overrideConfig = ClientOverrideConfiguration.builder(); DynamoDbClient client = DynamoDbClient.builder() .httpClientBuilder(httpClientBuilder) .overrideConfiguration(overrideConfig.build()) .build();
範例 2.x 版中的非同步用戶端組態
NettyNioAsyncHttpClient.Builder httpClientBuilder = NettyNioAsyncHttpClient.builder(); ClientOverrideConfiguration.Builder overrideConfig = ClientOverrideConfiguration.builder(); ClientAsyncConfiguration.Builder asyncConfig = ClientAsyncConfiguration.builder(); DynamoDbAsyncClient client = DynamoDbAsyncClient.builder() .httpClientBuilder(httpClientBuilder) .overrideConfiguration(overrideConfig.build()) .asyncConfiguration(asyncConfig.build()) .build();
HTTP 用戶端
顯著的變更
-
在 2.x 版中,您可以使用 指定實作,以變更要在執行時間使用的 HTTP 用戶端。
clientBuilder.httpClientBuilder -
當您使用 將 HTTP 用戶端傳遞
clientBuilder.httpClient至服務用戶端建置器時,如果服務用戶端關閉,則 HTTP 用戶端預設不會關閉。這可讓您在服務用戶端之間共用 HTTP 用戶端。 -
非同步 HTTP 用戶端現在使用非封鎖 IO。
-
有些操作現在使用 HTTP/2 來改善效能。
設定變更
| 設定 | 1.x | 2.x 同步、Apache | 2.x 非同步、Netty |
|---|---|---|---|
|
|
|
|
| 最大連線數 |
|
|
|
| 連線逾時 |
|
|
|
| 通訊端逾時 |
|
|
|
| 連線 TTL |
|
|
|
| 連線閒置上限 |
|
|
|
| 閒置後驗證 |
|
不支援 (請求功能 |
不支援 (請求功能 |
| 本機地址 |
|
|
不支援 |
| Expect-continue 已啟用 |
|
|
不支援 (請求功能 |
| 連線解析程式 |
|
|
|
|
|
|
HTTP 用戶端代理
| 設定 | 1.x | 2.x 同步、Apache | 2.x 非同步、Netty |
|---|---|---|---|
|
|
|
|
| 代理主機 |
|
|
|
| 代理連接埠 |
|
Proxy 連接埠內嵌於 |
|
| 代理使用者名稱 |
|
|
|
| 代理密碼 |
|
|
|
| Proxy 網域 |
|
|
不支援 (請求功能 |
| Proxy 工作站 |
|
|
不支援 (請求功能 |
| Proxy 身分驗證方法 |
|
不支援 (請求功能 |
|
| 先佔式基本代理身分驗證 |
|
|
不支援 (請求功能 |
| 非代理主機 |
|
|
|
| 停用通訊端代理 |
|
不支援 (請求功能 |
不支援 (請求功能 |
|
|
|
用戶端覆寫
| 設定 | 1.x | 2.x |
|---|---|---|
|
|
|
| 使用者代理程式字首 |
|
|
| 使用者代理程式尾碼 |
|
|
| Signer |
|
|
| 其他標頭 |
|
|
| 請求逾時 |
|
|
| 用戶端執行逾時 |
|
|
| 使用 Gzip |
|
不支援 (請求功能 |
| 通訊端緩衝區大小提示 |
|
不支援 (請求功能 |
| 快取回應中繼資料 |
|
不支援 (請求功能 |
| 回應中繼資料快取大小 |
|
不支援 (請求功能 |
| DNS 解析程式 |
|
不支援 (請求功能 |
| TCP 保持連線 |
|
此選項現在位於 HTTP 用戶端組態中
|
| 安全隨機 |
|
不支援 (請求功能 |
|
|
用戶端覆寫重試
| 設定 | 1.x | 2.x |
|---|---|---|
|
|
|
| 重試錯誤上限 |
|
|
| 使用限流重試 |
|
不支援 |
| 限流前的連續重試次數上限 |
|
不支援 |
|
|
非同步用戶端
| 設定 | 1.x | 2.x |
|---|---|---|
|
||
| 執行器 |
|
|
|
其他用戶端變更
來自 1.x 的下列ClientConfiguration選項已在 SDK 的 2.x 中變更,並且沒有直接對等項目。
| 設定 | 1.x | 2.x 同等 |
|---|---|---|
| 通訊協定 |
|
根據預設,通訊協定設定為 HTTPS。若要修改設定,請指定在用戶端建置器上設定 HTTP 端點的通訊協定:
|