當前位置:編程學習大全網 - 源碼下載 - Apache APISIX 2.12.0 發布,雲原生的微服務 API 網關

Apache APISIX 2.12.0 發布,雲原生的微服務 API 網關

繼 2.11.0 版本發布之後,Apache APISIX 也在即將到來的新春佳節,為大家帶來 2022 年 第壹個帶有新功能的版本 。

新功能

更多的 Serverless 集成

在上個版本裏,Apache APISIX 增加了對 Azure Function 的支持。而這次新版本在功能上又加入了對更多 Serverless 廠商的支持。如今用戶也可以在 Apache APISIX 中結合 AWS Lambda 和 Apache OpenWhisk,在網關上進行特定函數的暴露。

更多的鑒權插件

此次的新版本,還將帶來兩個眾人翹首以盼的新插件: forward-auth 和 opa 。

通過上述兩個插件,將為 Apache APISIX 的鑒權功能錦上添花,給用戶帶來更多豐富和上手簡單的鑒權操作。

更多的日誌功能

除了上邊提到的鑒權插件,本次新版本還將帶來三個新的日誌插件: google-cloud-logging 、 splunk-hec-logging 以及 rocketmq-logger 。

從插件名稱上也很容易理解,通過上述三個插件可以把日誌分別發送到 Google Cloud、Splunk 和 Apache RocketMQ。未來,Apache APISIX 將會對接越來越多的日誌服務商和開源 Broker,讓日誌處理變得更加輕松。

同時,此次 2.12.0 版本還在日誌層面支持記錄響應體。與 Apache APISIX 其他功能壹樣,該功能也可以通過表達式進行動態開啟。這樣在使用中,就可以實現僅在上遊返回特定的 Content-Type 和 Content-Length 時進行日誌記錄,不用再去顧慮全量采集響應體而帶來的問題了。

具體示例可參考下方:

上述配置會僅在 Content-Length < 4096 且 Content-Type 為 "application/json" 才記錄日誌。

另壹個跟日誌緊密相關的功能,就是新版本的 Apache APISIX 已支持註冊自定義變量。同時結合 APISIX 的自定義日誌格式,就可以實現完全自定義上報的日誌內容。即無需修改具體的日誌插件,就能實現日誌生成和上報的解耦合。這裏我們通過壹個示例進行簡單演示壹下。

比如我們可以在自己的插件中註冊壹個 a6_route_labels 的變量:

並在自定義日誌格式中使用它:

假設我們的 Route 長這樣:

最終就會收到如下所示的日誌:

L4 代理支持 TLS over TCP 上遊

在 2.12.0 版本中還引入了新的 Upstream Scheme,現在 Apache APISIX 已支持代理到 TLS over TCP 上遊了。

具體做法可參考下方,只需在 Upstream 配置中指明 Scheme 為 TLS 即可。

至此 Apache APISIX 的 TCP 代理功能得到了 TLS 全方位的支持。此外,我們還支持在靜態文件中配置 L4 代理的 Access Log:

更新

多語言插件持續完善

在之前版本中,Apache APISIX 已開放了對 WASM 生態的支持。而在 2.12.0 版本中,針對 WASM 生態又做了不少的更新細節。

目前 Apache APISIX 已經支持在 header_filter 的階段運行 WASM 代碼,彌補了現有外部插件無法修改響應的不足。

此外,我們還支持在 WASM 裏面通過 Apache APISIX 這個宿主進行 HTTP 通訊。借助這壹功能,我們用 WASM 也重新實現了 forward-auth 插件。該插件的功能幾乎和 Lua 版本壹模壹樣,甚至連測試用例也是在 Lua 版本上改了下名字就能通過了。

當然,我們也沒有忘記針對現有的外部插件進行更新,本次 2.12.0 版本中,Apache APISIX 已允許外部插件獲取請求體。

比如最近發布的 Java Plugin Runner 第二版就包含了這壹功能。新版本的 Java Plugin Runner 還支持在運行時動態獲取 APISIX 變量。

完善

更多細節

除了上述新功能和組件外,Apache APISIX 2.12.0 版本還更新了如下功能:

更多關於 Apache APISIX 2.12.0 的更新細節,可以查看本次發布對應的 Change log 。

下載

想要獲取最新的 Apache APISIX 2.12.0 版本,可通過以下路徑下載:

源代碼: https://apisix.apache.org/downloads/

二進制安裝包: https://apisix.apache.org/zh/docs/apisix/how-to-build/

  • 上一篇:主動加密的防泄密軟件有哪些?
  • 下一篇:簡單說說com dcom com+ dll lib的區別
  • copyright 2024編程學習大全網