本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
同步通訊
在同步通訊中,用戶端會啟動對服務的請求,如下圖所示。範例包括擷取資訊的請求,例如HTTP GET請求,或變更資料的請求,例如HTTP PUT請求。在任何一種情況下,用戶端都會等待伺服器回應,然後再繼續。大多數開發人員都熟悉同步呼叫,易於實作和疑難排解,而且在許多情況下, 是廣泛接受的通訊標準。
同步通訊的優點包括:
-
可預測的流程控制 – 確定性執行和清除請求回應週期,相較於非同步通訊,這些週期更容易理解。
-
高度一致性 – 立即確認資料變更和狀態更新。
-
簡單錯誤處理 – 直接傳播錯誤和例外狀況。
-
簡易偵錯 – 直接的請求追蹤和監控。
-
通訊協定支援 – 建立良好的通訊協定,例如 HTTP 和 REST,讓實作變得簡單。
同步通訊有一些缺點:
-
緊密耦合 – 服務對彼此可用性的直接相依性。
-
網路影響 – 由於持續開放連線而增加網路負載。
-
資源使用率 – 維護連線狀態的記憶體使用量較高。
-
串聯失敗 – 能夠讓一個服務中的問題快速傳播到系統中。