微軟發佈用於Serverless架構的Azure API Management

Azure API Management是一種全託管服務,爲用戶提供發佈、保護、轉換、維護和監控API的能力。用戶只需要在Azure門戶上點擊幾下,就可以創建一個充當“前門”的API門面,外部和內部應用程序可以通過這個門面訪問自定義後端服務實現的數據或業務邏輯,這些後端服務可以運行在Azure上(例如App Service或Azure Kubernetes Service),或託管在Azure外部(私有數據中心或組織內部部署)。API Management負責處理與API調用相關的所有任務,包括請求身份驗證和授權、速率限定和配額實施、請求和響應轉換、日誌記錄和跟蹤以及API版本管理。

從現在開始,Azure用戶可以在創建新的API Management實例時選擇新的Consumption版本。這種Consumption版本實質上是基於無服務器原則設計和實現的API Management的變體,讓更多的用戶享受API Management的好處,非常適應於使用無服務器技術構建的新型應用程序。

APIM Consumption版本可以實現來自用戶的一些應用場景:

使用無服務器技術(如Functions和Logic Apps)實現的微服務API網關。
爲無服務器Azure資源(如Service Bus隊列和主題、Azure存儲等)提供簡化且安全的外觀的API網關。
傳統後端的API網關,其中API流量會出現較大的峯值,但在大多數情況下保持較低水平。

版本的比較

爲了更好地瞭解新版本,我們將其與現有版本進行比較。

API Management推出了兩個版本——Developer版本和Standard版本。隨着時間的推移,我們爲企業用戶添加了具有高級功能的Premium版本,並將Basic版本作爲入門級版本。這些版本具有一個共同的架構,每個API Management服務實例都會分配到一組專用的資源。安全隔離、即時可用容量以及隔離保護是這種方法的主要優點之一。不過,它們也帶來了一些副作用——相對較高的配置和擴展延遲,而且不是基於用戶使用進行定價,這些都不適用於基於無服務器應用程序模型的新型解決方案。

Consumption版本使用了與之前的版本相同的底版本服務組件,但同時又採用了一種完全不同的基於動態分配資源的架構。因此,它與無服務器計算模型完美匹配,即無需管理基礎設施,無空閒容量,高可用,可自動擴展和基於使用的定價模型,所有這些都使它成爲涉及將無服務器資源暴露爲API的解決方案的最佳選擇。在選擇Consumption版本時會涉及一些權衡,其中最重要的兩個是功能集和使用限制。下表總結了各版本之間的比較結果。

Consumption Developer | Basic | Standard | Premium
無需配置或管理基礎設施 無需配置或管理基礎設施
內置高可用性 內置高可用性(除Developer外)
內置自動伸縮(低至零) 手動或外部自動伸縮(Azure Monitor Autoscale僅支持Standard和Premium)
基於Consumption的定價模型 基於預留容量的定價模型
無預留容量 預留容量
共享資源 專用資源
按需激活 始終開啓
選擇的功能集 全功能集(不同版本有所差異)
使用限制 無限制

新功能

以下兩個新功能現在僅在Consumption版本中可用,不過很快也將在其他版本中可用。

自帶高速緩存(Bring Your Own Cache,BYOC):高速緩存是一項被廣泛使用的用於降低API延遲和API後端負載的技術。用戶可以讓API Management服務使用外部配置的Redis兼容緩存。用戶可以完全控制緩存配置,預加載和清除緩存內容,還可以爲不同的API Management服務實例擴展緩存大小,這些是BYOC的主要優勢。它也是在Consumption版本中啓用響應緩存的唯一選項,因爲與其他版本不同的是它沒有內置緩存。我們修改了現有的緩存策略,以便讓它能夠與集成的和外部的緩存配置無縫協作。

更靈活的訂閱:訂閱本質上是一組API密鑰(準確的說是兩個——主要的和次要的)容器。以前,訂閱必須由用戶持有,並且支持單個API產品作用域。爲了簡化密鑰管理,我們做出了一些變更。我們現在允許“獨立”訂閱,不與用戶相關聯。我們還添加了兩個訂閱作用域——所有API和單個API。因此,現在可以爲API訪問權限創建密鑰(或API Management實例中的所有API),而無需先創建產品並添加API(或所有API)!此外,每個API Management實例現在都帶有一個不可變的全API訂閱,這使得在Test控制檯中測試和調試API變得更加容易。

後續工作

自去年春天以來,我們一直致力開發Consumption版本,現在很高興與用戶分享這個消息。但是,我們仍然有很多工作要做。以下是將在未來幾個月推出的一些重要功能和改進。

  • 自定義主機名和證書;
  • “一鍵”升級到更高的API Management版本;
  • 更快的配置時間(與較舊的版本相比已經非常快了,但我們希望進一步改進它);
  • 減少“冷啓動”延遲(我們在這方面做得還不夠,而且延遲還有很大的改進空間);
  • 公共Azure區域的廣泛可用性(我們計劃在API Management可用的每個區域都提供完整的Consumption版本);
  • 其他無服務器和PaaS資源的“添加API”體驗(在“添加API”頁面上可以看到新的功能按鈕)。

可用性

我們很高興地宣佈,Consumption版本即將在美國中北部、美國西部、西歐、北歐、東南亞和澳大利亞東部地區可用。

英文原文:https://azure.microsoft.com/zh-cn/blog/announcing-azure-api-management-for-serverless-architectures/?WT.mc_id=social-reddit-marouill

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章