非同步通訊與輕量型傳訊 - 實作 AWS 上的微型服務

非同步通訊與輕量型傳訊

在傳統的整合型應用程式中,通訊相當地簡單:應用程式的某個部分,使用方法呼叫或內部事件發送機制,以與其他的部分進行通訊。如果使用拆分去耦的微型服務,來建置相同的應用程式,則應用程式不同部分之間的通訊,就必須使用網路通訊來進行。

REST 型通訊

在建置微型服務之間的同步通訊時,HTTP/S 通訊協定是最熱門的方式。在大部分情況中,RESTful API 使用 HTTP 做為傳輸層。REST 架構模式使用無狀態通訊、統一的界面與標準方法。

利用 API Gateway,即可建立做為前門使用的 API,以供應用程式存取資料、商業邏輯或後端服務的功能。API 開發人員可以建立 API,進而存取 AWS 或其他 Web 服務,以及 AWS 雲端中所存放的資料。使用 API Gateway 服務所定義的 API 物件,是一組資源和方法。

資源是 API 網域內的型別物件,而且可能有相關聯的資料模型,或是和其他資源具有關係。每個資源皆可設定為回應一個或多個標準方法,也就是標準的 HTTP 動詞/方法,例如 GET、POST 或 PUT。REST API 可部署至不同的階段、進行版本控制,也可複製至新的版本。

涉及接受和處理多達數十萬個並行 API 呼叫 (包括流量管理、授權與存取控制、監控和 API 版本管理) 的所有任務均由 API Gateway 處理。