產(chǎn)品架構(gòu)
API 網(wǎng)關(guān)主要由 GW Controller 和 Mosng 兩個(gè)組件構(gòu)成,GW Controller 將數(shù)據(jù)推送給 Mosng 后,Mosng 開(kāi)始對(duì)外提供服務(wù)。本文主要結(jié)合這兩個(gè)組件介紹 API 網(wǎng)關(guān)架構(gòu)。
API Gateway 系統(tǒng)主要由以下組件構(gòu)成:
GW Controller:網(wǎng)關(guān)控制臺(tái),負(fù)責(zé)提供頁(yè)面操作。
Mosng:核心業(yè)務(wù)系統(tǒng),負(fù)責(zé)提供核心 RPC 能力。
API Gateway 的流量路徑如下:
用戶配置 API 信息
用戶在 API 網(wǎng)關(guān)控制臺(tái)頁(yè)面配置 API 信息。
GW Controller 將配置信息入庫(kù),并使用 ZK/DRM 通知其他 API Gateway 容器。
GW Controller 把所有容器加載更新后的 API 信息通過(guò) gRPC 推送到 Mosng 內(nèi)存中。
應(yīng)用調(diào)用 API 服務(wù)
應(yīng)用通過(guò) HTTP/SOFARPC/SOFAREST 等協(xié)議請(qǐng)求到網(wǎng)關(guān)。
Mosng 網(wǎng)關(guān)根據(jù)內(nèi)存中的 API 信息校驗(yàn)應(yīng)用的請(qǐng)求信息 (驗(yàn)簽、解密、RPC 信息校驗(yàn))。
如果信息校驗(yàn)失敗,則直接返回錯(cuò)誤信息給應(yīng)用。
如果信息校驗(yàn)通過(guò),則根據(jù)配置的協(xié)議(HTTP/SOFARPC/SOFAREST)將應(yīng)用的請(qǐng)求轉(zhuǎn)發(fā)到后端業(yè)務(wù)服務(wù)器。