衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

API 網(wǎng)關(guān)詳細(xì)介紹(上)

jf_78858299 ? 來源:Steve的后端小棧 ? 作者: Steave ? 2023-05-04 17:28 ? 次閱讀

業(yè)界有很多流行的 API 網(wǎng)關(guān),開源的有 Nginx、Netflix Zuul、Kong 等。當(dāng)然 Kong 還有商業(yè)版,類似的商業(yè)版網(wǎng)關(guān)還有 GoKu API Gateway 和 Tyk 等。

GoKu API Gateway 是由國內(nèi)公司 eolinker 使用 Go 語言研發(fā),擁有社區(qū)版和商業(yè)版,包含 API Gateway 和 Dashboard 兩部分。其中社區(qū)版本包含大量基礎(chǔ)功能,可以滿足中型企業(yè)和產(chǎn)品的使用;企業(yè)版本包含更多擴(kuò)展;比較適合大型軟件和大型組織使用。

Tyk 由國外的 TykTechnologies 公司研發(fā),也是基于 Go 語言。Tyk 一切均導(dǎo)向收費(fèi)版本,免費(fèi)版本第一次申請有一年的使用授權(quán)。

下面將會介紹常用的 API 網(wǎng)關(guān)組件 Nginx、Zuul 和 Kong 的相關(guān)特性。

Nginx

Nginx 可以說是互聯(lián)網(wǎng)應(yīng)用的標(biāo)配組件,主要的使用場景包括負(fù)載均衡、反向代理、代理緩存、限流等。

Nginx 由內(nèi)核和模塊組成,內(nèi)核的設(shè)計非常微小和簡潔,完成的工作也非常簡單,僅僅通過查找配置文件與客戶端請求進(jìn)行 URL 匹配,用于啟動不同的模塊去完成相應(yīng)的工作。

Nginx 在啟動后,會有一個 Master 進(jìn)程和多個 Worker 進(jìn)程,Master 進(jìn)程和 Worker 進(jìn)程之間是通過進(jìn)程間通信進(jìn)行交互的,如圖所示。Worker 工作進(jìn)程的阻塞點是在像 select()、epoll_wait() 等這樣的 I/O 多路復(fù)用函數(shù)調(diào)用處,以等待發(fā)生數(shù)據(jù)可讀 / 寫事件。Nginx 采用了異步非阻塞的方式來處理請求,也就是說,Nginx 是可以同時處理成千上萬個請求的。

圖片

還可以將 Lua 嵌入到 Nginx 中,從而可以使用 Lua 來編寫腳本,這樣就可以使用 Lua 編寫應(yīng)用腳本,部署到 Nginx 中運(yùn)行,即 Nginx 變成了一個 Web 容器;這樣開發(fā)人員就可以使用 Lua 語言開發(fā)高性能Web應(yīng)用了。在開發(fā)的時候使用 OpenResty 來搭建開發(fā)環(huán)境,OpenResty 將 Nginx 核心、LuaJIT、許多有用的 Lua 庫和 Nginx 第三方模塊打包在一起;這樣只需要安裝 OpenResty,不需要了解 Nginx 核心和寫復(fù)雜的 C/C++ 模塊就可以,只需要使用 Lua 語言進(jìn)行 Web 應(yīng)用開發(fā)了。

使用 Nginx 的反向代理和負(fù)載均衡可實現(xiàn)負(fù)載均衡及高可用,除此之外還需要我們解決自注冊和網(wǎng)關(guān)本身的擴(kuò)展性。

Springcloud-gateway

Spring Cloud Gateway 是 Spring Cloud 微服務(wù)生態(tài)下的網(wǎng)關(guān)組件。Spring Cloud Gateway 是基于 Spring 5 和 Spring Boot 2 搭建的

Netflix Zuul

Zuul 是 Netflix 開源的微服務(wù)網(wǎng)關(guān)組件,它可以和 Eureka、Ribbon、Hystrix 等組件配合使用。社區(qū)活躍,融合于 SpringCloud 完整生態(tài),是構(gòu)建微服務(wù)體系前置網(wǎng)關(guān)服務(wù)的最佳選型。Zuul 的核心是一系列的過濾器,這些過濾器可以完成以下功能:

  • 身份認(rèn)證與安全:識別每個資源的驗證要求,并拒絕那些與要求不符的請求。
  • 審查與監(jiān)控:與邊緣位置追蹤有意義的數(shù)據(jù)和統(tǒng)計結(jié)果,從而帶來精確的生產(chǎn)視圖。
  • 動態(tài)路由:動態(tài)地將請求路由到不同的后端集群。
  • 壓力測試:逐漸增加指向集群的流量,以了解性能。
  • 負(fù)載分配:為每一種負(fù)載類型分配對應(yīng)容量,并棄用超出限定值的請求。
  • 靜態(tài)響應(yīng)處理:在邊緣位置直接建立部分響應(yīng),從而避免其轉(zhuǎn)發(fā)到內(nèi)部集群。
  • 多區(qū)域彈性:跨越 AWS Region 進(jìn)行請求路由,旨在實現(xiàn) ELB(Elastic Load Balancing,彈性負(fù)載均衡)使用的多樣化,以及讓系統(tǒng)的邊緣更貼近系統(tǒng)的使用者。

上面提及的這些特性是 Nigix 所沒有的,Netflix 公司研發(fā) Zuul 是為了解決云端的諸多問題(特別是幫助 AWS 解決跨 Region 情況下的這些特性實現(xiàn)),而不僅僅是做一個類似于 Nigix 的反向代理,當(dāng)然,我們可以僅使用反向代理功能,這里不多做描述。

Zuul 目前有兩個大的版本:Zuul1 和 Zuul2。

  • Zuul1 是基于 Servlet 框架構(gòu)建,如圖所示,采用的是阻塞和多線程方式,即一個線程處理一次連接請求,這種方式在內(nèi)部延遲嚴(yán)重、設(shè)備故障較多情況下會引起存活的連接增多和線程增加的情況發(fā)生。
  • Netflix 發(fā)布的 Zuul2 有重大的更新,它運(yùn)行在異步和無阻塞框架上,每個 CPU 核一個線程,處理所有的請求和響應(yīng),請求和響應(yīng)的生命周期是通過事件和回調(diào)來處理的,這種方式減少了線程數(shù)量,因此開銷較小。

Kong

Kong 是 Mashape 開源的高性能高可用 API 網(wǎng)關(guān)和 API 服務(wù)管理層,一款基于 Nginx_Lua 模塊寫的高可用服務(wù)網(wǎng)關(guān),由于 Kong 是基于 Nginx 的,所以可以水平擴(kuò)展多個 Kong 服務(wù)器。通過前置的負(fù)載均衡配置把請求均勻地分發(fā)到各個 Server,來應(yīng)對大批量的網(wǎng)絡(luò)請求。

Nginx、Zuul 和 Kong 這三種 API 網(wǎng)關(guān)組件的功能和特性,并制作了如下的對比表格:

組件/指標(biāo) Nginx Zuul(1.x)/springcloud gateway Kong 社區(qū)版
API 注冊/動態(tài)路由 在Nginx中配置 動態(tài)路由 通過 Admin API 管理
支持協(xié)議 RESTful API RESTful API RESTful API
插件機(jī)制 Lua 插件機(jī)制 可以基于源碼定制開發(fā),基于 Servlet/Filter Lua 插件機(jī)制
安全認(rèn)證 & 鑒權(quán) 插件支持 支持 OAuth、JWT 等 支持OAuth2.0、黑白名單、ACL、JWT、SSL 等
限流 插件 插件 支持Rate Limiting
高可用集群 配合硬件負(fù)載均衡 可以通過部署多個 Zuul 做負(fù)載均衡 支持集群
可管理性 沒有 GUI 管理臺 提供 Rest API 交互
性能 一般
日志記錄 Nginx 可靈活記日志 可自行配置 日志可以記錄到磁盤,或者HTTP、TCP、UDP發(fā)出去

總得來說,Zuul 復(fù)雜度較低,上手簡單,可以自定義開發(fā),但是高并發(fā)場景下的性能相對較差;Nginx 性能經(jīng)受得住考驗,配合 Lua 可以引入各種插件,但是功能性相對較弱,需要開發(fā)者自身去完善很多功能;Kong 基于 Nginx、OpenResty 和 Lua,對性能要求高,需要對外開放,建議考慮使用 Kong。下面我們將重點介紹。

Kong網(wǎng)關(guān)介紹:

  • 為什么需要云原生網(wǎng)關(guān)?
  • Kong 介紹
  • Kong 的基本架構(gòu)
  • 使用 Kong 構(gòu)建服務(wù)網(wǎng)關(guān)
  • 幾種常用插件應(yīng)用
  • 自定義插件的實踐

為什么需要 API 網(wǎng)關(guān)?

當(dāng)使用單體應(yīng)用程序架構(gòu)時,客戶端(Web 或移動端)通過向后端應(yīng)用程序發(fā)起一次 REST 調(diào)用來獲取數(shù)據(jù)。負(fù)載均衡器將請求路由給 N 個相同的應(yīng)用程序?qū)嵗械囊粋€。然后應(yīng)用程序會查詢各種數(shù)據(jù)庫表,并將響應(yīng)返回給客戶端。微服務(wù)架構(gòu)下,單體應(yīng)用被切割成多個微服務(wù),如果將所有的微服務(wù)直接對外暴露,勢必會出現(xiàn)安全方面的各種問題。

客戶端可以直接向每個微服務(wù)發(fā)送請求,其問題主要如下:

  • 客戶端需求和每個微服務(wù)暴露的細(xì)粒度 API 不匹配。
  • 部分服務(wù)使用的協(xié)議不是Web友好協(xié)議。可能使用 Thrift 二進(jìn)制 RPC,也可能使用 AMQP 消息傳遞協(xié)議。
  • 微服務(wù)難以重構(gòu)。如果合并兩個服務(wù),或者將一個服務(wù)拆分成兩個或更多服務(wù),這類重構(gòu)就非常困難了。

服務(wù)端的各個服務(wù)直接暴露給客戶端調(diào)用勢必會引起各種問題。同時,服務(wù)端的各個服務(wù)可擴(kuò)展和伸縮性很差。API 網(wǎng)關(guān)是微服務(wù)架構(gòu)中的基礎(chǔ)組件,位于接入層之下和業(yè)務(wù)服務(wù)層之上,如前所述的這些功能適合在 API 網(wǎng)關(guān)實現(xiàn)。

關(guān)于服務(wù)網(wǎng)關(guān)的開源組件,有 Netflix Zuul、Spring Cloud Gateway、Kong、Traefik、NGINX 和服務(wù)網(wǎng)關(guān)類型的 Envoy 等。我們現(xiàn)在使用的是可編程的新型網(wǎng)關(guān):Spring Cloud Gateway, Spring Cloud Gateway是基于WebFlux異步編程技術(shù)。本文主要介紹現(xiàn)代微服務(wù)網(wǎng)關(guān) Kong,在 Kong 的官網(wǎng)介紹中,第一條特性便是 Kong 的云原生屬性:與平臺無關(guān),Kong 可以從裸機(jī)運(yùn)行到 Kubernetes。本文基于 Kong 1.2.1,自定義插件部分會涉及部分 Lua 編碼,適合服務(wù)端開發(fā)和運(yùn)維人員。

  1. 什么是 Kong

    當(dāng)我們決定對應(yīng)用進(jìn)行微服務(wù)改造時,應(yīng)用客戶端如何與微服務(wù)交互的問題也隨之而來,畢竟服務(wù)數(shù)量的增加會直接導(dǎo)致部署授權(quán)、負(fù)載均衡、通信管理、分析和改變的難度增加。

    面對以上問題,API GATEWAY是一個不錯的解決方案,其所提供的訪問限制、安全、流量控制、分析監(jiān)控、日志、請求轉(zhuǎn)發(fā)、合成和協(xié)議轉(zhuǎn)換功能,可以解放開發(fā)者去把精力集中在具體邏輯的代碼,而不是把時間花費(fèi)在考慮如何解決應(yīng)用和其他微服務(wù)鏈接的問題上。

  2. 為什么使用Kong

    在眾多 API GATEWAY 框架中,Mashape 開源的高性能高可用API網(wǎng)關(guān)和API服務(wù)管理層——KONG(基于 NGINX)特點尤為突出,它可以通過插件擴(kuò)展已有功能,這些插件(使用 lua 編寫)在API請求響應(yīng)循環(huán)的生命周期中被執(zhí)行。于此同時,KONG本身提供包括 HTTP 基本認(rèn)證、密鑰認(rèn)證、CORS、TCP、UDP、文件日志、API請求限流、請求轉(zhuǎn)發(fā)及 NGINX 監(jiān)控等基本功能。目前,Kong 在 Mashape 管理了超過 15,000 個 API,為 200,000 開發(fā)者提供了每月數(shù)十億的請求支持。

Kong 的基本架構(gòu)

Kong 是基于 Nginx 的,所以可以水平擴(kuò)展多個 Kong 服務(wù)器。通過前置的負(fù)載均衡配置把請求均勻地分發(fā)到各個 Server,來應(yīng)對大批量的網(wǎng)絡(luò)請求。

圖片

Kong 主要有三個組件:

  • Kong Server :基于nginx的服務(wù)器,用來接收 API 請求。
  • Apache Cassandra/PostgreSQL:用來存儲操作數(shù)據(jù)。
  • Kong dashboard:官方推薦 UI 管理工具,當(dāng)然,也可以使用 restfull 方式管理 admin api。

Kong 采用插件機(jī)制進(jìn)行功能定制,插件集(可以是 0 或 N 個)在 API 請求響應(yīng)循環(huán)的生命周期中被執(zhí)行。插件使用 Lua 編寫,基礎(chǔ)功能包括:HTTP 基本認(rèn)證、密鑰認(rèn)證、CORS(Cross-Origin Resource Sharing,跨域資源共享)、TCP、UDP、文件日志、API 請求限流、請求轉(zhuǎn)發(fā)以及 Nginx 監(jiān)控等。

Kong 網(wǎng)關(guān)具有以下的特性:

  • 可擴(kuò)展性: 通過簡單地添加更多的服務(wù)器,可以輕松地進(jìn)行橫向擴(kuò)展,這意味著您的平臺可以在一個較低負(fù)載的情況下處理任何請求;
  • 模塊化: 可以通過添加新的插件進(jìn)行擴(kuò)展,這些插件可以通過RESTful Admin API輕松配置;
  • 在任何基礎(chǔ)架構(gòu)上運(yùn)行: Kong 網(wǎng)關(guān)可以在任何地方都能運(yùn)行。可以在云或內(nèi)部網(wǎng)絡(luò)環(huán)境中部署 Kong,包括單個或多個數(shù)據(jù)中心設(shè)置,以及 public,private 或 invite-only APIs。

常用概念

Kong 中常用的術(shù)語介紹,這些術(shù)語會在下面的實踐中經(jīng)常用到。

  • Route:請求的轉(zhuǎn)發(fā)規(guī)則,按照 Hostname 和 PATH,將請求轉(zhuǎn)發(fā)給 Service;
  • Services:多個 Upstream 的集合,是 Route 的轉(zhuǎn)發(fā)目標(biāo);
  • Consumer:API 的用戶,記錄用戶信息
  • Plugin:插件,可以是全局的,也可以綁定到 Service、Router 或者 Consumer;
  • Certificate:https 配置的證書;
  • Sni:域名與 Certificate 的綁定,指定了一個域名對應(yīng)的 https 證書;
  • Upstream:上游對象用來表示虛擬主機(jī)名,擁有多個服務(wù)(目標(biāo))時,會對請求進(jìn)行負(fù)載均衡;
  • Target:最終處理請求的 Backend 服務(wù)。

使用 Kong 構(gòu)建服務(wù)網(wǎng)關(guān)

客戶端的請求將會首先經(jīng)由微服務(wù)網(wǎng)關(guān)處理,一些通用的功能切面將會在網(wǎng)關(guān)生效,即 Kong 中的插件,之后才會將請求進(jìn)行轉(zhuǎn)發(fā)到對應(yīng)的 Backend 服務(wù),如下圖所示。

安裝實踐

目前 Kong 的最新版本 1.2,Kong 的安裝支持多種方式。官方支持如下列出方式的安裝:

圖片

除了官方提供的安裝方式,還有社區(qū)提供的安裝方式,詳細(xì)了解參見:https://konghq.com/install/。

一、安裝Kong

1.構(gòu)建 Kong 的容器網(wǎng)絡(luò)

首先我們創(chuàng)建一個 Docker 自定義網(wǎng)絡(luò),以允許容器相互發(fā)現(xiàn)和通信。在下面的創(chuàng)建命令中 kong-net 是我們創(chuàng)建的 Docker 網(wǎng)絡(luò)名稱。

docker network create kong-net

2.搭建數(shù)據(jù)庫環(huán)境

Kong 目前使用 Cassandra 或者 PostgreSQL,你可以執(zhí)行以下命令中的一個來選擇你的 Database。請注意定義網(wǎng)絡(luò) --network=kong-net 。

使用 PostgreSQL:

docker pull postgres:9.6

 docker run -d --name kong-database \\
                --network=kong-net \\
                -p 5432:5432 \\
                -e "POSTGRES_USER=kong" \\
                -e "POSTGRES_DB=kong" \\
                -e "POSTGRES_PASSWORD=kong" \\
                postgres:9.6

3.初始化或者遷移數(shù)據(jù)庫

我們使用 docker run --rm 來初始化數(shù)據(jù)庫,該命令執(zhí)行后會退出容器而保留內(nèi)部的數(shù)據(jù)卷(volume)。這個命令我們還是要注意的,一定要跟你聲明的網(wǎng)絡(luò),數(shù)據(jù)庫類型、host 名稱一致。

下面指定的數(shù)據(jù)庫是 PostgreSQL:


docker run --rm \\
      --network=kong-net \\
      -e "KONG_DATABASE=postgres" \\
      -e "KONG_PG_HOST=kong-database" \\
      -e "KONG_PG_PASSWORD=kong" \\
      -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \\
      kong:1.5.1 kong migrations bootstrap

4.啟動 Kong 容器

完成初始化或者遷移數(shù)據(jù)庫后,我們就可以啟動一個連接到數(shù)據(jù)庫容器的 Kong 容器,請務(wù)必保證你的數(shù)據(jù)庫容器啟動狀態(tài),同時檢查所有的環(huán)境參數(shù) -e 是否是你定義的環(huán)境。


docker pull kong:1.5.1

 docker run -d --name kong \\
      --network=kong-net \\
      -e "KONG_DATABASE=postgres" \\
      -e "KONG_PG_HOST=kong-database" \\
      -e "KONG_PG_PASSWORD=kong" \\
      -e "KONG_CASSANDRA_CONTACT_POINTS=kong-database" \\
      -e "KONG_PROXY_ACCESS_LOG=/dev/stdout" \\
      -e "KONG_ADMIN_ACCESS_LOG=/dev/stdout" \\
      -e "KONG_PROXY_ERROR_LOG=/dev/stderr" \\
      -e "KONG_ADMIN_ERROR_LOG=/dev/stderr" \\
      -e "KONG_ADMIN_LISTEN=0.0.0.0:8001, 0.0.0.0:8444 ssl" \\
      -p 8000:8000 \\
      -p 8443:8443 \\
      -p 8001:8001 \\
      -p 8444:8444 \\
      kong:1.5.1

Kong 默認(rèn)綁定 4 個端口

8000:用來接收客戶端的 HTTP 請求,并轉(zhuǎn)發(fā)到 upstream。
 8443:用來接收客戶端的 HTTPS 請求,并轉(zhuǎn)發(fā)到 upstream。
 8001:HTTP 監(jiān)聽的 API 管理接口
 8444:HTTPS 監(jiān)聽的 API 管理接口。

到這里,Kong 已經(jīng)安裝完畢,我們可以使用 docker ps 命令查看當(dāng)前運(yùn)行容器,正常情況下可以看到 Kong 和 PostgreSQL 的兩個容器:


docker ps

圖片

我們可以通過 curl -i http://192.168.1.200:8001 來查看 Kong 是否運(yùn)行完好。

二、安裝Kong UI

Kong 企業(yè)版提供了管理 UI,開源版本是沒有的。但是有很多的開源的管理 UI ,其中比較流行的有Kong Dashboard 和 Konga。簡單介紹一下 Kong Dashboard 和 Konga。

1.Kong Dashboard

docker 環(huán)境中安裝運(yùn)行如下:


docker pull pgbi/kong-dashboard

 docker run --rm  \\
 --network=kong-net \\
 -p 8080:8080 \\
 pgbi/kong-dashboard start \\
 --kong-url http://kong:8001

啟動之后,可以在瀏覽器中輸入 http://192.168.1.200:8080/ 來訪問 Kong Dashboard 管理界面。

2.Konga

Konga(官網(wǎng)地址:pantsel.github.io/konga/,Github地址:github.com/pantsel/kon… )可以很好地通過 UI 觀察到現(xiàn)在 Kong 的所有的配置,并且可以對于管理Kong節(jié)點情況進(jìn)行查看、監(jiān)控和預(yù)警。Konga主要是用 AngularJS 寫的,運(yùn)行于 nodejs 服務(wù)端。具有以下特性:

  • 管理所有 Kong Admin API 對象。
  • 支持從遠(yuǎn)程源(數(shù)據(jù)庫,文件,API等)導(dǎo)入使用者。
  • 管理多個 Kong 節(jié)點。使用快照備份,還原和遷移 Kong 節(jié)點。
  • 使用運(yùn)行狀況檢查監(jiān)視節(jié)點和 API 狀態(tài)。
  • 支持電子郵件和閑置通知。
  • 支持多用戶。
  • 易于數(shù)據(jù)庫集成(MySQL,PostgresSQL,MongoDB,SQL Server)。

下面使用的 PostgreSQL 是和上面在 docker 環(huán)境中安裝 Kong 時的是一致的,注意用戶名、密碼、數(shù)據(jù)庫名稱等配置,docker 環(huán)境安裝啟動 Konga:

docker pull pantsel/konga

 docker run  -d -p 1337:1337 \\
         --network kong-net \\
         --name konga \\
         -e "DB_ADAPTER=postgres" \\
         -e "DB_URI=postgresql://kong:kong@kong-database/kong" \\
         pantsel/konga

如果 Konga 容器啟動成功,可以通過 http://192.168.1.200:1337/ 訪問管理界面。通過注冊后進(jìn)入,然后在 CONNECTIONS 中添加 Kong 服務(wù)的管理路徑 http://192.168.1.200:8001。Konga 管理界面示例如下:

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 網(wǎng)關(guān)
    +關(guān)注

    關(guān)注

    9

    文章

    4586

    瀏覽量

    51493
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1510

    瀏覽量

    62394
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    154

    瀏覽量

    12233
  • go語言
    +關(guān)注

    關(guān)注

    1

    文章

    158

    瀏覽量

    9089
收藏 人收藏

    評論

    相關(guān)推薦

    API信息全掌控,方便你的日志管理——阿里云推出API網(wǎng)關(guān)打通日志服務(wù)

    摘要: 近日,阿里云API網(wǎng)關(guān)對接了日志服務(wù),可以輸出用戶在API網(wǎng)關(guān)產(chǎn)生的API調(diào)用日志,目前支持將
    發(fā)表于 02-06 15:24

    哪位大神可以詳細(xì)介紹一下MQTT API嗎?

    MQTT API介紹
    發(fā)表于 04-02 07:24

    AI邊緣計算網(wǎng)關(guān)介紹

    AI邊緣計算網(wǎng)關(guān)介紹:智能網(wǎng)關(guān)支持物聯(lián)網(wǎng)硬件多協(xié)議接入,適應(yīng)各種無線通信協(xié)議場景。只需通過硬件板卡的快速裝卸,就可以實現(xiàn)功能的自由增刪。同時智能網(wǎng)關(guān)運(yùn)行Mosquitto等服務(wù)實現(xiàn)了M
    發(fā)表于 07-26 06:41

    介紹ZigBee網(wǎng)關(guān)的架構(gòu)

    前面的文章中,我們通過實際案例介紹了 ZigBee 網(wǎng)關(guān)的架構(gòu),相信大家對于網(wǎng)關(guān)該如何挑選合適的器件來實現(xiàn)相應(yīng)功能有了一定了解。那么本文將從硬件設(shè)計的角度來繼續(xù)網(wǎng)關(guān)的話題!硬件電路是
    發(fā)表于 11-11 08:18

    介紹LoRaWAN網(wǎng)關(guān)的技術(shù)基礎(chǔ)及其工作原理

    /軟件組件四、總結(jié)在上一篇文章中我大概解釋了什么是LoRaWAN網(wǎng)關(guān)。今天我將會更詳細(xì)地給大家介紹LoRaWAN網(wǎng)關(guān)的技術(shù)基礎(chǔ)及其工作原理。只有了解這些,我們才能讓我們更好地了解
    發(fā)表于 02-14 07:45

    ESP8266 Node MCU-API 函數(shù)的詳細(xì)中文說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是ESP8266的Node MCU-API 函數(shù)的詳細(xì)中文說明。
    發(fā)表于 09-21 08:00 ?103次下載

    什么是API網(wǎng)關(guān)為什么需要API網(wǎng)關(guān)

    API網(wǎng)關(guān)可以看做系統(tǒng)與外界聯(lián)通的入口,我們可以在網(wǎng)關(guān)進(jìn)行處理一些非業(yè)務(wù)邏輯的邏輯,比如權(quán)限驗證,監(jiān)控,緩存,請求路由等等。
    發(fā)表于 12-23 09:57 ?1.3w次閱讀
    什么是<b class='flag-5'>API</b><b class='flag-5'>網(wǎng)關(guān)</b>為什么需要<b class='flag-5'>API</b><b class='flag-5'>網(wǎng)關(guān)</b>

    如何在騰訊云添加LoRaWAN網(wǎng)關(guān)詳細(xì)步驟介紹

    我們可以在騰訊云創(chuàng)建項目,并將LoRaWAN網(wǎng)關(guān)連接到騰訊云,從而我們就可以利用到騰訊云SERVER的強(qiáng)大功能,來更方便的查看接收到的監(jiān)控數(shù)據(jù)。 本文介紹如何在騰訊云已創(chuàng)建好的項目的基礎(chǔ)
    發(fā)表于 07-02 16:42 ?1987次閱讀
    如何在騰訊云<b class='flag-5'>上</b>添加LoRaWAN<b class='flag-5'>網(wǎng)關(guān)</b>,<b class='flag-5'>詳細(xì)</b>步驟<b class='flag-5'>介紹</b>

    ESP8266字符串API詳細(xì)概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是ESP8266字符串API詳細(xì)概述。
    發(fā)表于 07-17 08:00 ?1次下載
    ESP8266字符串<b class='flag-5'>API</b>的<b class='flag-5'>詳細(xì)</b>概述

    Service Mesh和API網(wǎng)關(guān)正在逐步融合

    API Gateway 之間的關(guān)系,這個問題過去兩年間經(jīng)常被問起,社區(qū)也有不少文章和資料給出解答。其中不乏 Christian Posta 這樣的網(wǎng)紅給出過深度介紹。我在這里做一個資料的整理和匯總,結(jié)合
    的頭像 發(fā)表于 10-10 16:39 ?1237次閱讀

    關(guān)于API網(wǎng)關(guān)策略的知識分享

    近些年隨著云原生和微服務(wù)架構(gòu)的日趨發(fā)展,API 網(wǎng)關(guān)以流量入口的角色在技術(shù)架構(gòu)中扮演著越來越重要的作用。API 網(wǎng)關(guān)主要負(fù)責(zé)接收所有請求的流量并進(jìn)行處理轉(zhuǎn)發(fā)至上游服務(wù),
    的頭像 發(fā)表于 02-11 10:45 ?1236次閱讀

    API 網(wǎng)關(guān)詳細(xì)介紹(下)

    業(yè)界有很多流行的 API 網(wǎng)關(guān),開源的有 Nginx、Netflix Zuul、Kong 等。當(dāng)然 Kong 還有商業(yè)版,類似的商業(yè)版網(wǎng)關(guān)還有 GoKu API Gateway 和 T
    的頭像 發(fā)表于 05-04 17:28 ?906次閱讀
    <b class='flag-5'>API</b> <b class='flag-5'>網(wǎng)關(guān)</b><b class='flag-5'>詳細(xì)</b><b class='flag-5'>介紹</b>(下)

    為什么需要 API 網(wǎng)關(guān)

    API 網(wǎng)關(guān)API 全生命周期管理的關(guān)鍵基礎(chǔ)組件,負(fù)責(zé)生產(chǎn)環(huán)境中 API 的配置、發(fā)布、版本回滾、安全、負(fù)載均衡等。API
    的頭像 發(fā)表于 05-04 17:47 ?831次閱讀
    為什么需要 <b class='flag-5'>API</b> <b class='flag-5'>網(wǎng)關(guān)</b>?

    企業(yè)怎么選擇API網(wǎng)關(guān)

    ? 一、API網(wǎng)關(guān)的用處 API網(wǎng)關(guān)我的分析中會用到以下三種場景。 1、Open API 企業(yè)需要將自身數(shù)據(jù)、能力等作為開發(fā)平臺向外開放,通
    的頭像 發(fā)表于 05-23 11:05 ?706次閱讀
    企業(yè)怎么選擇<b class='flag-5'>API</b><b class='flag-5'>網(wǎng)關(guān)</b>

    api網(wǎng)關(guān) kong 教程入門

    統(tǒng)一權(quán)限控制、接口請求訪問日志統(tǒng)計 安全,是保護(hù)內(nèi)部服務(wù)而設(shè)計的一道屏障 開源-最大好處 當(dāng)然也有一個很大的缺點,api-gw很可能成為性能瓶頸,因為所有的請求都經(jīng)過這里,可以通過橫向擴(kuò)展和限流解決這個問題。 在眾多API GATEWAY框架中,Mashape開源的高性
    的頭像 發(fā)表于 11-10 11:39 ?852次閱讀
    <b class='flag-5'>api</b><b class='flag-5'>網(wǎng)關(guān)</b> kong 教程入門
    君怡百家乐的玩法技巧和规则| 泰山百家乐的玩法技巧和规则 | 欢乐谷娱乐城官网| 什么事百家乐的路单| 百家乐官网存200送200| 百家乐官网赌机玩法| 百家乐官网开户送百元| 太阳城现金网| 德州扑克书| 全讯网社区| 网上的百家乐官网是假的吗| 百家乐官网游戏必赢法| 澳门赌场女| 大发888bet游戏平台| 百家乐和怎么算输赢| 百家乐机械投注法| 百家乐官网园试玩| 百家乐官网游戏卡通| 百家乐官网投注很不错| 百家乐官网技巧发布| 腾飞国际娱乐城| 六合彩图纸| 百家乐超级市场| 百家乐博彩金| 金城百家乐玩法| 太阳百家乐官网代理| 什么百家乐官网九宫三路| 赌场百家乐官网试玩| 百家乐官网视频游戏中心| 百家乐官网模拟投注器| 百家乐官网休闲游戏| 宁国市| 鄂州市| 黄金城| 姚记娱乐城信誉最好| 大发888 m摩卡游戏| 大发888188| 大发888娱乐城官方下载lm0| 威尼斯人娱乐网网上百家乐| 做生意门朝山| 百家乐tt娱乐城|