higress~higress是(shi)什(shen)么
- 下游(Downstream):下游指 Higress 接收到請求的來源,一般是如瀏覽器等客戶端
- 上游(Upstream):上游指 Higress 轉發請求的目標后端服務
Higress 簡介
Higress 是(shi)一款云原生 API 網關,內核(he)基于 Istio 和 Envoy,可(ke)以用 Go/Rust/JS 等編寫 Wasm 插(cha)件,提(ti)供了數十(shi)個現成(cheng)的(de)(de)通(tong)用插(cha)件,以及開箱(xiang)即用的(de)(de)控制(zhi)臺(demo 點這里)
Higress 在阿里內部為解決 Tengine reload 對(dui)長連接業(ye)務有(you)損,以及 gRPC/Dubbo 負載(zai)均衡能力不足而(er)誕生。
阿里云基于(yu) Higress 構(gou)建了云原生 API 網(wang)關(guan)產品,為(wei)大量企業客戶(hu)提供 99.99% 的(de)網(wang)關(guan)高可(ke)用保障服務能力。
Higress 基于 AI 網(wang)關能力,支撐了通(tong)義千問 APP、百煉(lian)大(da)模型 API、機器學習 PAI 平(ping)臺等(deng) AI 業務(wu)。同時服務(wu)國內頭部的 AIGC 企業(如(ru)零一(yi)萬物),以及(ji) AI 產品(如(ru) FastGPT)

什么是 AI 網關
AI Gateway = AI Native API Gateway
AI 網關(guan)的(de)(de)本質(zhi)依(yi)然(ran)是 API 網關(guan),AI 原生的(de)(de)意義在(zai)于(yu),在(zai)這樣的(de)(de) API 網關(guan)里(li),AI 是一(yi)等公民(min)。API 研發,API 供(gong)應,API 消費,以及 API 觀測都(dou)基于(yu) AI 場景下的(de)(de)需求(qiu),演進出全新的(de)(de)能力。
這是傳統(tong) API 網(wang)關的功能范疇,AI 場景下仍然有(you)其通用價(jia)值:

在 AI 場景(jing)下,基(ji)于 Higress 可以將 API 網關的功能范疇(chou)進一(yi)步擴展:

核心優勢
生產等級
-
脫胎于阿里巴巴多年(nian)生產驗證的內部產品,支(zhi)持每秒請(qing)求量達數(shu)十(shi)萬(wan)級的大(da)規模場景。
-
徹底擺脫(tuo) Nginx reload 引起的流量抖動,配置(zhi)變(bian)更(geng)毫(hao)秒級生效且業務無感。對 AI 業務等長連接場(chang)景特別友好。
便于擴展
-
提(ti)供(gong)豐富的官方插(cha)件(jian)庫,涵(han)蓋 AI、流量(liang)管(guan)理(li)、安全(quan)防護等常用功能,滿(man)足90%以(yi)上(shang)的業務場景需求。
-
主打 Wasm 插件擴展,通過(guo)沙箱隔離確(que)保內存安(an)全,支持多(duo)種編程語言,允許插件版(ban)本獨立升級,實現流量無損熱更新(xin)網關邏輯。
安全易用
-
基于 Ingress API 和 Gateway API 標準,提供開箱即(ji)用的 UI 控制臺,WAF 防(fang)(fang)護(hu)插件、IP/Cookie CC 防(fang)(fang)護(hu)插件開箱即(ji)用。
-
支持對(dui)接 Let’s Encrypt 自動簽發(fa)和續簽免費證書(shu),并(bing)且可以脫離 K8s 部署,一行 Docker 命令即可啟(qi)動,方便(bian)個人開發(fa)者使(shi)用。
流式處理
-
支持真(zhen)正的(de)完全流(liu)式處(chu)理請(qing)求/響應 Body,Wasm 插件(jian)很方便地自定義處(chu)理 SSE (Server-Sent Events)等流(liu)式協議的(de)報文。
-
在 AI 業務等大帶寬(kuan)場景下,可以顯(xian)著降低內存開銷。
使用場景
AI 網關:
Higress 能(neng)夠用統一的協議對(dui)接(jie)國內外所有 LLM 模型廠商,同時(shi)具(ju)備豐富的 AI 可觀測、多模型負載(zai)均(jun)衡(heng)/fallback、AI token 流控、AI 緩存(cun)等能(neng)力(li):

Kubernetes Ingress 網關:
Higress 可(ke)以作為 K8s 集(ji)群的(de) Ingress 入(ru)口(kou)網關(guan), 并且(qie)兼容了大量(liang) K8s Nginx Ingress 的(de)注解,可(ke)以從 K8s Nginx Ingress 快速平滑(hua)遷移到(dao) Higress。
支持 Gateway API 標準,支持用戶從 Ingress API 平滑遷移到 Gateway API。
相比 ingress-nginx,資源開銷大幅下(xia)降,路(lu)由(you)變更(geng)生效速度有十(shi)倍提升

微服務網關:
Higress 可以作為微服務(wu)網(wang)關, 能夠(gou)對接多(duo)種類型的(de)注冊中心發現服務(wu)配置路(lu)由,例如 Nacos, ZooKeeper, Consul, Eureka 等。
并(bing)且(qie)深度集成了 Dubbo, Nacos, Sentinel 等微(wei)(wei)服(fu)務(wu)技術棧,基(ji)于 Envoy C++ 網關(guan)內核的(de)出色性能,相比傳統 Java 類微(wei)(wei)服(fu)務(wu)網關(guan),可以顯著(zhu)降低資源使(shi)用率,減少成本。

安全防護網關:
Higress 可以作為安(an)全防(fang)護網關(guan), 提供(gong) WAF 的能力(li),并(bing)且支(zhi)持多種(zhong)認證鑒權策(ce)略(lve),例如(ru) key-auth, hmac-auth, jwt-auth, basic-auth, oidc 等。