2016-08-02 69 views
-1

我們正在使用AWS開發工具包與AWS進行交互。例如,創建,停止和重新啓動ec2實例。第一步如果實例化客戶端,然後可以使用,但我相信如果網絡連接在客戶端實例化後失敗,則不能再使用該實例。但是,重新啓用連接後,可能會再次連接到AWS,並且此過程需要幾秒鐘的時間。所以我想知道是否有人可以描述這個類的預期行爲。AmazonEc2Client的一個實例如何處理網絡中斷?

回答

1

大多數AWS開發工具包都會在網絡破壞或命令限制的情況下自動重試命令。但是,如果SDK仍無法執行其操作,它們將失敗並將錯誤代碼返回給您。返回的錯誤代碼取決於發生的實際故障。所以你需要處理錯誤的可能性。

使用此引用的各種錯誤代碼的軟件開發工具包可以返回:

http://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html

我相信,如果客戶端被實例化後,網絡連接失敗,該實例可以不再使用。

不正確。如果連接失敗,該命令將返回錯誤代碼,但您可以使用同一個客戶端重試該命令(或發出不同的命令)。

但是,它可能是實例處於連接到AWS的過程

該SDK的客戶端不保持周圍堅持到AWS連接的連接後,再次。當您在SDK上調用函數時,纔會連接到AWS以執行請求的操作。

+0

謝謝。看看文檔 - 如果關於僅連接執行操作的評論在那裏,會很有用。如果你有一個很棒的鏈接。 – Jeff

+0

沒有文檔,但您可以查看GitHub上各種SDK的源代碼以查看行爲:https://github.com/aws/ –