国产玉足榨精视频在线_亚洲日韩国产第一区_男人都懂的网站在线观看免费_久久91亞洲精品中文字幕奶水_按摩房技师激情国产精品_无人在线观看视频在线观看_年轻女教师2免费播放_欧洲熟妇色xxⅩx欧美老妇多毛_91爱视频成人在线第一页_欧美日韩中文字幕成人网

日志樣式

臺州網(wǎng)站建設(shè)需要多少錢(apix幣種介紹)apix幣最新消息,

作者:劉維,API7.ai 網(wǎng)關(guān)開發(fā)工程師摘要:本文介紹 API 貨幣化的概念,應(yīng)用場景和具體實踐。

什么是 API 貨幣化?想象一下,你成功開發(fā)并部署了一個服務(wù),可以搜集你所在城市所有超市的打折和優(yōu)惠信息現(xiàn)在,有開發(fā)者想使用你的服務(wù),需要你提供相應(yīng)的 API,他們將付費獲取你的授權(quán)服務(wù),然后通過你開發(fā)的 API 得到打折與優(yōu)惠信息。

像這樣通過 API 的方式將數(shù)據(jù)的使用轉(zhuǎn)化為金錢的模式,就叫做 API 貨幣化API 貨幣化是使 API 網(wǎng)絡(luò)服務(wù)獲得盈利的理想方式在決定采用 API 貨幣化的商業(yè)模式后,首先需要考慮的就是如何計費通常有兩種計費方式:。

1.按次收費2.服務(wù)訂閱不管采用哪種方式,都需要統(tǒng)計不同身份用戶調(diào)用 API 的數(shù)量,對超出一定數(shù)量的用戶要進行限流和限速操作所以,計費的關(guān)鍵點在于能否識別出用戶的身份大部分購買服務(wù)的用戶屬于企業(yè)員工該群體登錄企業(yè)賬號后,理應(yīng)能夠共享同一個計費賬號,所以能否識別出用戶所屬組織也同樣重要。

API 貨幣化有哪些應(yīng)用?現(xiàn)實生活中 API 貨幣化的應(yīng)用無處不在,例如最常見的驗證碼功能、云廠商提供的消息隊列與文字識別服務(wù)、安全廠家提供的 WAF (Web 應(yīng)用防火墻)與內(nèi)容過濾等服務(wù)這些服務(wù)模式的市場需求量十分龐大,以至于我們迫切需要一個合適的技術(shù)棧來為 API 貨幣化打下堅實的基礎(chǔ),也就是說我們需要對 API 進行精細(xì)化管理。

在管理 API 時,我們需要控制不同身份的用戶在不同場景下的發(fā)布權(quán)限,并且要確保發(fā)布這些 API 符合組織標(biāo)準(zhǔn),諸如 URL 模式、命名約定、訪問控制規(guī)則等不同職能的部門對 API 的管理手段也不盡相同,通常包括對已發(fā)布的 API 進行更新或設(shè)計改進;執(zhí)行流量控制、速率限制和安全策略等;實時觀測 API 使用情況、性能及其他指標(biāo)。

用來管理并解決使用 API 過程中的各種問題的工具,就叫做 API 網(wǎng)關(guān)作為中央代理,API 網(wǎng)關(guān)將所有從客戶端傳入的請求路由到預(yù)定的目的地(后端服務(wù)),使 API 更安全、更易于管理API 網(wǎng)關(guān)通常支持各種授權(quán)和認(rèn)證協(xié)議,能夠?qū)?API 進行復(fù)雜的權(quán)限控制,還有速率限制等諸多功能。

目前市面上有許多流行的 API 網(wǎng)關(guān)開源項目,其中較引人注目、且廣泛應(yīng)用的就是 Apache APISIX(云原生微服務(wù)網(wǎng)關(guān))和其替代的企業(yè) SaaS 解決方案 API7 Cloud (https://www.apiseven.com/)。

APISIX 的 API 貨幣化實踐Apache APISIX 不僅支持上述的各種功能,通過其豐富的插件,還支持與 Prometheus、OpenTelemetry、Apache Skywalking 等多種可觀察性平臺進行集成,以進一步增強其分析 API 的能力并獲得完整的可視性。

針對上文提到的識別用戶身份,Apache APISIX 提出了 Consumer(消費者)的概念不同 Consumer 對應(yīng)不同的用戶,通過在 Consumer 上綁定對應(yīng)的插件和上游,不同的 Consumer 請求同一個 API。

經(jīng)用戶認(rèn)證體系識別后,網(wǎng)關(guān)服務(wù)根據(jù)當(dāng)前請求用戶的信息,自動匹配不同的 Plugin 或 Upstream 配置,此舉為差異化用戶管理提供了極大的便利

針對前文提到的同一企業(yè)多個不同職能的用戶,僅支持 Consumer 還不足以滿足需求當(dāng)多個 Consumer 共享同一個消費額度,若只管理每個 Consumer 的配置,操作就會過于繁瑣因此 APISIX 提出了 Consumer Group 的概念,有了 Consumer Group,多個 Consumer 就能共享同一套配置和同一個消費配額。

以上是 Apache APISIX 在 API 貨幣化上的實踐思路,下面我們來看看具體的應(yīng)用與配置以下示例可為企業(yè)配置限流限速,讓企業(yè)的用戶共享同一配置# create consumer groupcurl http://127.0.0.1:9180/apisix/admin/consumer_groups/company_a -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"plugins": {"limit-count": {"count": 200,"time_window": 60,"rejected_code": 503,"group": "$consumer_group_id"

# create consumer 1curl http://127.0.0.1:9180/apisix/admin/consumers -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"username": "jack","plugins": {"key-auth": {"key": "auth-one"},"group_id": "company_a"# create consumer 2

curl http://127.0.0.1:9180/apisix/admin/consumers -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"username": "johnson","plugins": {"key-auth": {"key": "auth-two"},"group_id": "company_a"# create route

curl http://127.0.0.1:9180/apisix/admin/routes/1 -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"uri": "/get","plugins": {"key-auth": {}},"upstream": {"type": "roundrobin","nodes": {"httpbin.org": 1

# hit the routecurl -i http://127.0.0.1:9180/get -H apikey: auth-oneX-RateLimit-Limit: 200X-RateLimit-Remaining: 199

curl -i http://127.0.0.1:9180/get -H apikey: auth-twoX-RateLimit-Limit: 200X-RateLimit-Remaining: 198

# change count value to 2 requests per minutecurl http://127.0.0.1:9180/apisix/admin/consumer_groups/company_a -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"plugins": {"limit-count": {"count": 2,"time_window": 60,"rejected_code": 503,"group": "$consumer_group_id"

# hit the routecurl -i http://127.0.0.1:9180/get -H apikey: auth-twoX-RateLimit-Limit: 2X-RateLimit-Remaining: 1

curl -i http://127.0.0.1:9180/get -H apikey: auth-oneX-RateLimit-Limit: 2X-RateLimit-Remaining: 0# no count, HTTP 503

curl -i http://127.0.0.1:9180/get -H apikey: auth-oneHTTP/1.1 503 Service Temporarily Unavailable# after a minute, count recover

curl -i http://127.0.0.1:9180/get -H apikey: auth-oneX-RateLimit-Limit: 2X-RateLimit-Remaining: 1# create another route

curl http://127.0.0.1:9180/apisix/admin/routes/2 -H X-API-KEY: edd1c9f034335f136f87ad84b625c8f1 -X PUT -d

"uri": "/anything","plugins": {"key-auth": {}},"upstream": {"type": "roundrobin","nodes": {"httpbin.org": 1

# you could see both routes share the same countcurl -i http://127.0.0.1:9180/get -H apikey: auth-one

X-RateLimit-Limit: 2X-RateLimit-Remaining: 1curl -i http://127.0.0.1:9180/anything -H apikey: auth-one

HTTP/1.1 503 Service Temporarily Unavailable總結(jié)不論是企業(yè)還是個人,想要通過 API 將數(shù)據(jù)與服務(wù)轉(zhuǎn)化為收入,實現(xiàn)貨幣化,都需要引入專業(yè)的管理工具 —— API 網(wǎng)關(guān)。

Apache APISIX 作為當(dāng)下最熱門的 API 網(wǎng)關(guān)之一,在貨幣化的道路上已經(jīng)有數(shù)百家企業(yè)的豐富實踐,提出的 “Consumer、Consumer Group” 等概念,極大地方便了用戶對 API 的管理,賦能企業(yè) API 貨幣化順暢落地。

OSCHINA 2022中國開源開發(fā)者問卷啟動你的反饋很重要!點擊下方小程序立即參與怎么理解開源世界里的白嫖?