如何確保冪等性工作

學習如何確保通過磚REST API不重複的提交工作如果有請求超時後重試。

寫的亞當Pavlacka

去年發表在:2022年5月11日

當你提交工作通過磚工作REST API,冪等性是沒有保證的。如果客戶機請求超時和客戶重新提交相同的請求,你可能最終得到重複的工作運行。

確保工作冪等性當你提交工作通過API,您可以使用一個冪等性標記來定義一個獨特的價值為一個特定的工作運行。如果同樣的工作必須重審此案,因為客戶沒有收到回複,由於網絡錯誤,客戶端可以使用相同的冪等性令牌重新工作,確保重複工作運行不觸發。

這裏是一個REST API的示例JSON負載的運行提交API使用idempotency_token123年的價值:

{“run_name”:“我的火星任務”,“new_cluster”: {“spark_version”:“5.5.x-scala2.11”、“node_type_id”:“r5。超大”、“aws_attributes”:{“可用性”:“ON_DEMAND”},“num_workers”: 10},“庫”:[{“罐子”:“dbfs: /我罐裏。jar”}, {maven:{“坐標”:“org.jsoup: jsoup: 1.7.2”}}],“spark_jar_task”: {“main_class_name”:“com.databricks。ComputeModels“}”, idempotency_token ": " 123 "}

所有請求相同的冪等性令牌應該返回200運行相同的ID。

這篇文章有用嗎?