蜜桃av色欲a片精品一区,麻豆aⅴ精品无码一区二区,亚洲人成网站在线播放影院在线,亚洲 素人 字幕 在线 最新

微立頂科技

新聞資訊

創(chuàng)新 服務(wù) 價值

  API網(wǎng)關(guān)的功能用途及實現(xiàn)方式

發(fā)布日期:2023/1/17 15:30:38      瀏覽量:

轉(zhuǎn)自博客園 原文鏈接:https://www.cnblogs.com/east4ming/p/17057454.html 

如有侵權(quán)請聯(lián)系我們刪除

1. API 網(wǎng)關(guān)誕生背景

前言

API 經(jīng)濟生態(tài)鏈已經(jīng)在全球范圍覆蓋, 絕大多數(shù)企業(yè)都已經(jīng)走在數(shù)字化轉(zhuǎn)型的道路上,API 成為企業(yè)連接業(yè)務(wù)的核心載體, 并產(chǎn)生巨大的盈利空間??焖僭鲩L的 API 規(guī)模以及調(diào)用量,使得企業(yè) IT 在架構(gòu)上、模式上面臨著更多的挑戰(zhàn)。

API 是什么

API 網(wǎng)關(guān)是一個服務(wù)器,是系統(tǒng)的唯一入口。從面向?qū)ο笤O(shè)計的角度看,它與外觀模式類似。API 網(wǎng)關(guān)封裝了系統(tǒng)內(nèi)部架構(gòu),為每個客戶端提供一個定制的 API。它可能還具有其它職責(zé),如身份驗證、監(jiān)控、負(fù)載均衡、緩存、請求分片與管理、靜態(tài)響應(yīng)處理。API 網(wǎng)關(guān)方式的核心要點是,所有的客戶端和消費端都通過統(tǒng)一的網(wǎng)關(guān)接入微服務(wù),在網(wǎng)關(guān)層處理所有的非業(yè)務(wù)功能。通常,網(wǎng)關(guān)也是提供 REST/HTTP 的訪問 API。服務(wù)端通過 API-GW 注冊和管理服務(wù)。

1. API 開放數(shù)量不斷增加

毋庸置疑,隨著企業(yè)的數(shù)據(jù)化進展,微服務(wù)改造,不同領(lǐng)域的 API 層出不窮,早在 2014 年 ProgrammableWeb 便預(yù)測 API 矢量可達(dá)到 100,000 到 200,000,并會不斷增長。API 開發(fā)數(shù)量的增加給邊緣系統(tǒng)帶來機會,也隨即演變了 API 網(wǎng)關(guān)的出現(xiàn)。大規(guī)模的 API 管理系統(tǒng)成為核心的發(fā)展趨勢。

2. API 服務(wù)平臺多樣化

最初的 API 主要針對不同單體應(yīng)用的網(wǎng)絡(luò)單元之間信息交互,現(xiàn)已演變到服務(wù)間快速通訊。隨著人工智能 EI,IOT 的不斷演進,依賴 API 的平臺不斷更新,如 Web,Mobile,終端等,未來將會出現(xiàn)更多的服務(wù)體系。包括不限于:

  • 瀏覽器
  • IOS
  • Android
  • macOS
  • Windows
  • Linux
  • IOT
  • 其他移動端
  • 小程序
  • 終端設(shè)備(如智慧零售、工業(yè)的終端等)
  • ......

3. 逐步替換原有企業(yè)的服務(wù)模式,API 即商品

賣計算,賣軟件,賣能力,最終的企業(yè)的銷售模式會逐步轉(zhuǎn)變,能力變現(xiàn),釋放數(shù)據(jù)價值,依托不同的 API 管理平臺創(chuàng)造新的盈利。

API 網(wǎng)關(guān)誕生背景

隨著 API 的整體趨勢發(fā)展,每個時期都面臨著不同的挑戰(zhàn),架構(gòu)也隨之變化,具體如下圖:

  1. 1960-1980:阿帕網(wǎng)、ATTP、TCP
  2. 1980-1990:點對點
  3. 1990-2000:消息中間件、ESB(企業(yè)服務(wù)總線,Enterprise service bus),SOA(面向服務(wù)的架構(gòu))
  4. 2000 至今:Integration as a service,RESTful services,API 管理,云上編排


從最原始的“傳輸協(xié)議通訊” -> “簡單的接口集成” -> “消息中間件” -> “標(biāo)準(zhǔn) REST”, 可以看到 API 的發(fā)展更趨向于簡潔, 集成,規(guī)范化, 這也促使更多的系統(tǒng)邊界組件不斷涌現(xiàn),在承載了萬億級的 API 經(jīng)濟的背景下, API 網(wǎng)關(guān)應(yīng)運而生。

如果沒有合適的 API 管理工具, API 經(jīng)濟不可能順利開展。 同時提出了對于 API 管理系統(tǒng)的生命周期定義: planning(規(guī)劃), design(設(shè)計), implementation(實施), publication(發(fā)布),operation(運維), consumption(消費), maintenance(維護) and retirement of APIs(下架)

如果沒有合適的 API 管理工具, API 經(jīng)濟不可能順利開展。 同時提出了對于 API 管理系統(tǒng)的生命周期定義: planning(規(guī)劃), design(設(shè)計), implementation(實施), publication(發(fā)布),operation(運維), consumption(消費), maintenance(維護) and retirement of APIs(下架)

-- Magic Quadrant for Full Life Cycle API Management,Gartner, 2016-10-27

2. API 網(wǎng)關(guān)核心功能

  • API 生命周期管理
    • planning(規(guī)劃)
    • design(設(shè)計)
    • implementation(實施)
    • publication(發(fā)布)
    • operation(運維)
    • consumption(消費)
    • maintenance(維護)
    • retirement(下架)
  • API 網(wǎng)關(guān)基礎(chǔ)功能
    • 認(rèn)證
    • 鑒權(quán)
    • 服務(wù)發(fā)現(xiàn)和集成
    • 負(fù)載均衡
    • 日志
    • 鏈路追蹤
    • 監(jiān)控
    • 重試
    • 限流
    • QoS
    • 熔斷器
    • 映射
    • 緩存
    • Header、query 字符串 等 轉(zhuǎn)義
    • API 文檔
    • API 測試
    • SDK 生成
  • API 多版本、多環(huán)境管理
  • 插件
  • API 集中式 metrics、logging、tracing 管理
  • 安全
    • HTTPS
    • IP 黑白名單
  • 高可用
    • 可熱重啟
  • 高性能
  • 可擴展性
    • 無狀態(tài)橫向擴展

3. API 網(wǎng)關(guān)的用途

OpenAPI

企業(yè)需要將自身數(shù)據(jù)、能力等作為開發(fā)平臺向外開放,通常會以 rest 的方式向外提供。最好的例子就是淘寶開放平臺、騰訊公司的 QQ 開發(fā)平臺、微信開放平臺。

Open API 開放平臺必然涉及到客戶應(yīng)用的接入、API 權(quán)限的管理、調(diào)用次數(shù)管理等,必然會有一個統(tǒng)一的入口進行管理,這正是 API 網(wǎng)關(guān)可以發(fā)揮作用的時候。

微服務(wù)網(wǎng)關(guān)

在微服務(wù)架構(gòu)中,有一個組件可以說是必不可少的,那就是微服務(wù)網(wǎng)關(guān),微服務(wù)網(wǎng)關(guān)處理了負(fù)載均衡,緩存,路由,訪問控制,服務(wù)代理,監(jiān)控,日志等。

API 網(wǎng)關(guān)在微服務(wù)架構(gòu)中正是以微服務(wù)網(wǎng)關(guān)的身份存在。

API 中臺

上述的微服務(wù)架構(gòu)對企業(yè)來說有可能實施上是困難的,企業(yè)有很多遺留系統(tǒng),要全部抽取為微服務(wù)改動太大,對企業(yè)來說成本太高。

但是由于不同系統(tǒng)間存在大量的 API 服務(wù)互相調(diào)用,因此需要對系統(tǒng)間服務(wù)調(diào)用進行管理,清晰地看到各系統(tǒng)調(diào)用關(guān)系,對系統(tǒng)間調(diào)用進行監(jiān)控等。

API 網(wǎng)關(guān)可以解決這些問題,我們可以認(rèn)為如果沒有大規(guī)模的實施微服務(wù)架構(gòu),那么對企業(yè)來說微服務(wù)網(wǎng)關(guān)就是企業(yè)的 API 中臺。

4. API 網(wǎng)關(guān)的價值

通過 API 網(wǎng)關(guān),可以封裝后端各種服務(wù),以 API 的形式,提供給各方使用。API 網(wǎng)關(guān)產(chǎn)品的優(yōu)勢總結(jié)如下:

  • API 全生命周期管理:協(xié)助開發(fā)者輕松完成 API 的創(chuàng)建、維護、發(fā)布、監(jiān)控等整個生命周期的管理。
  • 豐富的服務(wù)治理能力:支持 API 限流,參數(shù)校驗,元數(shù)據(jù)維護,SDK 生成,批量操作等能力,協(xié)助開發(fā)者高效管理服務(wù)。
  • 可觀察性:通過 API 網(wǎng)關(guān),支持對調(diào)用次數(shù),前后端錯誤次數(shù)等豐富監(jiān)控指標(biāo)的可視和告警能力;通過全面的監(jiān)控告警,保證用戶服務(wù)的可用性。
  • 可運營性:支持 企業(yè) OpenAPI 定價,賬單等運營功能
  • 服務(wù)安全:通過接入多種認(rèn)證方式,確保用戶 API 的訪問安全性;通過嚴(yán)格的流量控制,避免用戶服務(wù)的過載。
  • 前后端業(yè)務(wù)解耦
  • 多類型后端打通

5. API 網(wǎng)關(guān)的實現(xiàn)方式

主流 API 網(wǎng)關(guān)

  • Istio(以及最新出的 Envoy Gateway)
  • Linkerd
  • NGINX 及其商業(yè)版
  • KONG
  • Traefik
  • APISIX
  • RedHat 3scale
  • Netflix Zuul
  • Spring Cloud Gateway
  • Amazon API Gateway
  • 阿里云 API 網(wǎng)關(guān)(其最新開源的 Higress 是基于 Envoy Gateway 的)
  • 騰訊云 API 網(wǎng)關(guān)
  • MuleSoft

OpenAPI

對于定位 OpenAPI 平臺的 API 網(wǎng)關(guān),目前只能選擇專業(yè)的 API 網(wǎng)關(guān)作為解決方案。

微服務(wù)網(wǎng)關(guān)

對于定位為「微服務(wù)網(wǎng)關(guān)」的 API 網(wǎng)關(guān),業(yè)務(wù)有多種實現(xiàn)方式:

Service Mesh

典型的如 Istio,架構(gòu)如下:


通用反向代理

基于 NGINX 或 NGINX + LUA + OpenResty 的實現(xiàn)。典型如:

API 網(wǎng)關(guān)框架

公有云解決方案

其實公有云的解決方案也是基于以上方案的定制化開發(fā)并產(chǎn)品化后發(fā)布到公有云上,主流的也是基于:NGINX + LUA + OpenResty, 或者最新的可能是基于 Istio Gateway 的實現(xiàn)

其他方案

  • 基于 Netty、非阻塞 IO 模型。
  • 基于 Node.js 的方案。這種方案是應(yīng)用了 Node.js 的非阻塞的特性。
  • 基于 Java,如 MuleSoft


  業(yè)務(wù)實施流程

需求調(diào)研 →

團隊組建和動員 →

數(shù)據(jù)初始化 →

調(diào)試完善 →

解決方案和選型 →

硬件網(wǎng)絡(luò)部署 →

系統(tǒng)部署試運行 →

系統(tǒng)正式上線 →

合作協(xié)議

系統(tǒng)開發(fā)/整合

制作文檔和員工培訓(xùn)

售后服務(wù)

馬上咨詢: 如果您有業(yè)務(wù)方面的問題或者需求,歡迎您咨詢!我們帶來的不僅僅是技術(shù),還有行業(yè)經(jīng)驗積累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     聯(lián)系人:石先生/雷先生