欧美人与禽2O2O性论交,秋霞免费视频,国产美女视频免费观看网址,国产成人亚洲综合网色欲网

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐。

一、前言

API低代碼平臺(tái)是面向業(yè)務(wù)人員和IT人員雙向驅(qū)動(dòng)管理的能力平臺(tái),擁有通用場(chǎng)景的可視化配置能力,滿足運(yùn)營(yíng)創(chuàng)新場(chǎng)景需求實(shí)現(xiàn),還具有優(yōu)異的開(kāi)放性和擴(kuò)展性,能夠通過(guò)二次開(kāi)發(fā)實(shí)現(xiàn)企業(yè)規(guī)劃設(shè)計(jì)時(shí)的各類個(gè)性化場(chǎng)景需求,擴(kuò)展方式不僅限于是代碼開(kāi)發(fā),插件擴(kuò)展,以及社會(huì)化插件引用等。

API低代碼平臺(tái)的技術(shù)門(mén)檻低、交付周期短、開(kāi)發(fā)效率高、敏捷創(chuàng)新快等特點(diǎn),能夠幫助企業(yè)在數(shù)字化轉(zhuǎn)型中快速實(shí)現(xiàn)“業(yè)務(wù)數(shù)字化”到“數(shù)字業(yè)務(wù)化”,完全符合數(shù)字化轉(zhuǎn)型趨勢(shì)的場(chǎng)景化,扁平化和在線化,是數(shù)字化轉(zhuǎn)型中必不可少的數(shù)字技術(shù)工具平臺(tái)。

二、API生命周期管理

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

上圖是完整的API低代碼平臺(tái),整個(gè)API低代碼平臺(tái)簡(jiǎn)單來(lái)講分為四個(gè)子系統(tǒng),即API服務(wù)網(wǎng)關(guān)、API開(kāi)發(fā)子系統(tǒng)、API運(yùn)維子系統(tǒng)、API引擎子系統(tǒng)。API服務(wù)網(wǎng)關(guān)提供API注冊(cè)和發(fā)現(xiàn)功能。PI開(kāi)發(fā)子系統(tǒng)開(kāi)發(fā)API服務(wù)接口。API引擎子系統(tǒng)暴露標(biāo)準(zhǔn)的API服務(wù)接口。API運(yùn)維子系統(tǒng)負(fù)責(zé)從從引擎采集日志信息以及進(jìn)行API性能監(jiān)控和日志監(jiān)控分析。API治理子系統(tǒng)實(shí)現(xiàn)API接口從設(shè)計(jì)、開(kāi)發(fā)、測(cè)試、部署上線的全生命周期管理,也可以理解為API開(kāi)發(fā)、API引擎、API 運(yùn)維、API服務(wù)網(wǎng)關(guān)你的的一個(gè)統(tǒng)一管理門(mén)戶,實(shí)現(xiàn)和各的子系統(tǒng)集成,可以支持自動(dòng)部署配置完成的API到微服務(wù)運(yùn)行平臺(tái)。API運(yùn)行環(huán)境則為API低代碼平臺(tái)提供可擴(kuò)展、動(dòng)態(tài)伸縮的運(yùn)行環(huán)境。

三、API網(wǎng)關(guān)

API網(wǎng)關(guān)更多的是解決運(yùn)行態(tài)的問(wèn)題,API網(wǎng)關(guān)本身應(yīng)該輕量化設(shè)計(jì),主要實(shí)現(xiàn)API注冊(cè)、限流、熔斷、鑒權(quán)、反向代理等,不做太多的協(xié)議轉(zhuǎn)換、適配、數(shù)據(jù)映射等工作,這些工作應(yīng)該放到API開(kāi)發(fā)平臺(tái)來(lái)完成。在筆者的實(shí)踐中,采用了Kong API網(wǎng)關(guān)來(lái)?yè)?dān)當(dāng)API低代碼平臺(tái)的服務(wù)網(wǎng)關(guān),充分利用Kong強(qiáng)大的API實(shí)現(xiàn)API接口的注冊(cè)與發(fā)現(xiàn)、健康檢查、OAuth協(xié)議認(rèn)證等。Kong作為API網(wǎng)關(guān)提供了API管理功能,及圍繞API管理實(shí)現(xiàn)了一些默認(rèn)的插件,另外還具備集群水平擴(kuò)展能力,從而提升整體吞吐量。Kong本身是基于OpenResty,可以在現(xiàn)有Kong的基礎(chǔ)上進(jìn)行一些擴(kuò)展,從而實(shí)現(xiàn)更復(fù)雜的特性。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

在權(quán)限控制方面,通過(guò)服務(wù)網(wǎng)關(guān)OAuth2.0 authentication和安全控制插件ACL或Basic等插件,實(shí)現(xiàn)系統(tǒng)級(jí)權(quán)限認(rèn)證和接口級(jí)權(quán)限認(rèn)證,保證權(quán)限的安全。在流量控制方面,通過(guò)Rate-Limiting實(shí)現(xiàn)Consumer、Credential、IP、Service級(jí)別的限流,實(shí)現(xiàn)Second、Minute、Hour、Day、Month粒度的流控。

四、API開(kāi)發(fā)子系統(tǒng)

API開(kāi)發(fā)子系統(tǒng)最終就是開(kāi)發(fā)完成并暴露一個(gè)標(biāo)準(zhǔn)的HTTP API接口,并將接口注冊(cè)和接入到API網(wǎng)關(guān)。API設(shè)計(jì)和開(kāi)發(fā)的核心思想仍然應(yīng)該是基于領(lǐng)域?qū)ο蠼r?qū)動(dòng),通過(guò)領(lǐng)域?qū)ο蠼:芎玫膶?shí)現(xiàn)接口和底層數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)表之間的解耦,也方便實(shí)現(xiàn)底層多數(shù)據(jù)庫(kù),多表的支持能力。當(dāng)前很多API快速開(kāi)發(fā)平臺(tái)都是基于數(shù)據(jù)庫(kù)對(duì)象或表,直接發(fā)布類似CRUD的API接口服務(wù),但是基于是數(shù)據(jù)庫(kù)表的直接發(fā)布,我們?nèi)匀唤ㄗh逆向?qū)ο筮@層,方便后續(xù)在對(duì)象層進(jìn)行相關(guān)的組合,規(guī)則擴(kuò)展等操作。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

API開(kāi)發(fā)子系統(tǒng)通過(guò)可視化頁(yè)面生成接口邏輯,并用腳本語(yǔ)言來(lái)描述API的業(yè)務(wù)邏輯和處理返回的數(shù)據(jù)結(jié)構(gòu)體,比如采用JavaScript。在接口設(shè)計(jì)過(guò)程中,常常預(yù)留可編程接口,比如本例中的API查詢腳本和API預(yù)后處理。下圖是API業(yè)務(wù)邏輯的例子。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

在API開(kāi)發(fā)子系統(tǒng)創(chuàng)建對(duì)象,并對(duì)數(shù)據(jù)項(xiàng)進(jìn)行定義,對(duì)象是一個(gè)多層的樹(shù)狀結(jié)構(gòu)實(shí)體。一個(gè)對(duì)象可以向數(shù)據(jù)庫(kù)生成多張表。對(duì)于已經(jīng)存在的數(shù)據(jù)對(duì)象,也可以進(jìn)行組合,將多個(gè)組合為一個(gè)復(fù)合對(duì)象結(jié)構(gòu)。對(duì)象的好處即是一個(gè)完整的對(duì)象屬于同一生命周期,可以一起進(jìn)行事務(wù)控制。一個(gè)設(shè)計(jì)好的對(duì)象可以默認(rèn)生成標(biāo)準(zhǔn)的POST,GET,DELETE等接口操作方法,類似下圖,整個(gè)對(duì)象接口契約的生成也應(yīng)該是自動(dòng)的。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

五、API引擎子系統(tǒng)

API引擎子系統(tǒng)利用API開(kāi)發(fā)平臺(tái)生成的接口配置信息,生成可利用的API接口,并通過(guò)API服務(wù)網(wǎng)關(guān)對(duì)外提供標(biāo)準(zhǔn)協(xié)議的API服務(wù)。API查詢腳本和API預(yù)后處理通常采用腳本語(yǔ)言來(lái)描述API的業(yè)務(wù)邏輯,比如采用JavaScript。API腳本常常采用JavaScript語(yǔ)言來(lái)表達(dá),利用JS強(qiáng)大的語(yǔ)言特性,生成API的業(yè)務(wù)邏輯。通過(guò)腳本解釋器生成可執(zhí)行的腳本,然后發(fā)送到數(shù)據(jù)庫(kù),并將執(zhí)行的結(jié)構(gòu)封裝成JSON結(jié)構(gòu)體。API預(yù)后處理采用預(yù)留接口來(lái)處理返回的數(shù)據(jù),比如采用JavaScript來(lái)處理查詢引擎返回JSON結(jié)構(gòu)體,然后返回給服務(wù)調(diào)用者。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

六、API運(yùn)維子系統(tǒng)

API運(yùn)維子系統(tǒng)主要包括監(jiān)控和日志兩方面。監(jiān)控主要包括調(diào)用量、調(diào)用失敗次數(shù)、響應(yīng)時(shí)間、調(diào)用數(shù)據(jù)量等。日志主要包括平臺(tái)自身日志和API日志,在本例中采用ES存儲(chǔ)日志。

API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))API低代碼開(kāi)發(fā)平臺(tái)實(shí)踐(低代碼app開(kāi)發(fā)平臺(tái))

七、API治理

API接口發(fā)布:對(duì)于完成的對(duì)象定義,可以選擇具體發(fā)布哪些API接口服務(wù)能力。比如可以只選擇發(fā)布查詢接口,也可以只選擇發(fā)布數(shù)據(jù)導(dǎo)入的POST接口等。注意API接口的發(fā)布,具體可以基于全局的對(duì)象建模,配置具體需要發(fā)布到接口的數(shù)據(jù)項(xiàng)信息。很多時(shí)候我們對(duì)數(shù)據(jù)對(duì)象的操作,并不是操作整個(gè)對(duì)象全集,而僅僅是部分?jǐn)?shù)據(jù)項(xiàng)。

API接口模擬測(cè)試和驗(yàn)證:可以對(duì)發(fā)布的API接口進(jìn)行模擬測(cè)試和驗(yàn)證,因此需要提供在線的API測(cè)試工具,能夠方便在線進(jìn)行API接口的測(cè)試工作。同時(shí)可以對(duì)測(cè)試過(guò)的用例和測(cè)試數(shù)據(jù)進(jìn)行保存。

API接口文檔生成:支持自動(dòng)生成API接口文檔的能力。這個(gè)地方可以直接對(duì)接類似開(kāi)源Swagger等工具來(lái)實(shí)現(xiàn)API接口文檔的自動(dòng)生成功能。

八、總結(jié)

API低代碼平臺(tái)可以快速生成API接口,可以將多個(gè)對(duì)象或多個(gè)API接口服務(wù)打包到一個(gè)微服務(wù)應(yīng)用再進(jìn)行部署和發(fā)布,對(duì)微服務(wù)API進(jìn)行打包處理。打包完成的微服務(wù)可以導(dǎo)出為獨(dú)立的JAR包進(jìn)行部署,也可以直接在API開(kāi)發(fā)平臺(tái)進(jìn)行托管部署。對(duì)于API開(kāi)發(fā)平臺(tái)本身應(yīng)該對(duì)接到微服務(wù)運(yùn)行平臺(tái)。

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號(hào)
公眾號(hào)
在線咨詢
分享本頁(yè)
返回頂部