AWS SDK的API有提供idempotency的特性。
Idempotency的操作意思為做多次同樣的操作只會影響一次。
而AWS SDK的API透過一個ClientToken
欄位來實現idempotency的特性,也就是說每次操作時,若帶入的ClientToken
值相同會視為同樣的操作。
以AWS SDK for Go v2建立EC2 instance為例,若兩次呼叫ec2.Client.RunInstances
時傳入的參數ec2.RunInstancesInput.ClientToken
的值相同,則實際上只會建立一個instance,此即為AWS SDK API的idempotency特性。
GCP SDK也有類似的設計,例如建立VM instance的InstancesInsertCall.RequestId
沒有留言:
張貼留言