日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
一篇文章帶給你DevOps如何管理API?

一篇文章帶給你DevOps如何管理API?

2023-04-13 08:21:38

云計(jì)算

云原生 本文提出使用一體化的API管理平臺(tái)在DevOps工作流中對(duì)API進(jìn)行全生命周期管理,解決過(guò)去多個(gè)工具之間數(shù)據(jù)隔離、流程阻滯的問(wèn)題。

引言

隨著DevOps理念在中國(guó)企業(yè)當(dāng)中的普及和發(fā)展,中國(guó)企業(yè)DevOps落地成熟度不斷提升,根據(jù)中國(guó)信通院的數(shù)據(jù)已有近6成企業(yè)向全生命周期管理邁進(jìn)。而在研發(fā)全生命周期管理之中,API管理的地位愈發(fā)顯得重要。隨著API數(shù)量的大幅增長(zhǎng),也帶來(lái)了新的API管理需求。如何在DevOps工作流中進(jìn)行API全生命周期管理,對(duì)項(xiàng)目研發(fā)來(lái)說(shuō)具有重大意義。

一、DevOps中API管理困境

在實(shí)際的DevOps工作流中,API管理面臨著以下6大方面的困境:規(guī)范、協(xié)作、自動(dòng)化質(zhì)量、迭代、自動(dòng)化。

困境一:規(guī)范落地執(zhí)行難

因?yàn)閳F(tuán)隊(duì)中的API文檔質(zhì)量參差不齊,導(dǎo)致規(guī)范很難落地執(zhí)行。原因在于公司有很多的研發(fā)項(xiàng)目和團(tuán)隊(duì),不同的團(tuán)隊(duì)有不同的API管理習(xí)慣,尤其是常用的Swagger方式的管理,很難進(jìn)行統(tǒng)一的平臺(tái)化管理。針對(duì)這個(gè)困境,可以通過(guò)統(tǒng)一的API管理平臺(tái)規(guī)范文檔的模板,引導(dǎo)編寫(xiě)流程和習(xí)慣,也可以通過(guò)自動(dòng)化文檔管理工具來(lái)簡(jiǎn)化流程,提高管理效率。

困境二:崗位協(xié)作難、信息溝通效率低

在DevOps工具鏈中,每一個(gè)工具都會(huì)有不同的通知消息,導(dǎo)致重要信息淹沒(méi)在繁雜的通知中。其次是工作流程環(huán)節(jié)多、流程長(zhǎng),各崗位角色處理工作節(jié)奏不一,導(dǎo)致任務(wù)鏈上下游溝通效率低。針對(duì)這個(gè)困境,可以縮短流程環(huán)節(jié),多啟用自動(dòng)化流程。同時(shí)制定精細(xì)化通知規(guī)則,根據(jù)優(yōu)先級(jí)提供差異化通知樣式。最后,再通過(guò)每日推送復(fù)盤(pán)消息,梳理當(dāng)日工作項(xiàng)和消息通知,防止遺漏。

困境三:自動(dòng)化測(cè)試體系搭建門(mén)檻高

傳統(tǒng)的自動(dòng)化接口測(cè)試腳本需要用Python來(lái)編寫(xiě),門(mén)檻高,成本高。又因純手工編寫(xiě),開(kāi)發(fā)變動(dòng)后還須對(duì)照文檔二次調(diào)整接口的所有腳本。另外,自動(dòng)化測(cè)試前期投入時(shí)間多,準(zhǔn)備工作繁雜。針對(duì)這個(gè)困境,可以使用界面化的自動(dòng)化測(cè)試工具,降低腳本編寫(xiě)門(mén)檻。還可以通過(guò)一站式API全生命周期管理平臺(tái),免去大量前期工作,提高自動(dòng)化測(cè)試效率。

困境四:API生產(chǎn)質(zhì)量和在線異常的發(fā)現(xiàn)、跟蹤、解決流程過(guò)長(zhǎng)

當(dāng)下,在后端的接口自測(cè)、前段的MOCK測(cè)試、冒煙測(cè)試、集成測(cè)試、異常監(jiān)控這5個(gè)環(huán)節(jié)中都會(huì)使用到不同的工具,于是產(chǎn)生了跨工具之間對(duì)接復(fù)雜、數(shù)據(jù)隔離,導(dǎo)致API生產(chǎn)質(zhì)量薄弱,以及大量重復(fù)工作。可以通過(guò)一體化的API管理工具來(lái)打通不同環(huán)節(jié)的工作流,提高研發(fā)質(zhì)量和效能。

困境五:接口文檔無(wú)法跟蹤迭代版本,回溯排查難度大

傳統(tǒng)的接口管理工具如Swagger沒(méi)有接口修改記錄,缺少版本管理,無(wú)法通過(guò)日志定位問(wèn)題,無(wú)法進(jìn)行回滾和歷史對(duì)比。另外團(tuán)隊(duì)也缺少接口迭代計(jì)劃,導(dǎo)致開(kāi)發(fā)量和影響面分析都難以評(píng)估。接口文檔作為研發(fā)項(xiàng)目的重要資產(chǎn),應(yīng)該對(duì)其變更進(jìn)行盤(pán)點(diǎn),包括提供接口文檔的歷史記錄??梢酝ㄟ^(guò)一站式API全生命周期管理工具,提供項(xiàng)目級(jí)的接口版本管理和接口迭代計(jì)劃,輸出更加優(yōu)質(zhì)的接口文檔,推進(jìn)DevOps工作流的效率提升。

困境六:DevOps工作流使用工具多

DevOps作為宏觀層面的研發(fā)管理思路,目前并沒(méi)有大而全的工具,因此帶來(lái)企業(yè)內(nèi)部工具越積越多,數(shù)據(jù)流通阻滯,另外,傳統(tǒng)接口管理工具功能也很單一。針對(duì)這個(gè)問(wèn)題,可以使用一體化的API全生命周期管理工具來(lái)實(shí)現(xiàn)與接口相關(guān)的所有問(wèn)題,減少對(duì)接的工具數(shù)量。

二、DevOps中API管理需要什么

基于前文對(duì)DevOps中API管理存在的問(wèn)題,可以梳理出企業(yè)R&D需要以下六個(gè)方面:

  • 規(guī)范化:一個(gè)可配置規(guī)范、可自動(dòng)根據(jù)規(guī)范生成 API 文檔的 API 規(guī)范工具
  • 高協(xié)作:一個(gè)接口相關(guān)狀態(tài)自動(dòng)流轉(zhuǎn)、精準(zhǔn)通知信息的 API 協(xié)作工具
  • 自動(dòng)化:一個(gè)低門(mén)檻、智能錄入數(shù)據(jù)的 API 自動(dòng)化測(cè)試工具
  • 高質(zhì)量:一個(gè)一站式接口全流程質(zhì)量管理的 API 測(cè)試工具
  • 迭代快:一個(gè)提供從項(xiàng)目級(jí)迭代計(jì)劃,版本管控,到接口級(jí)歷史記錄的 API 管理工具
  • 工具鏈:一個(gè)接口全生命周期且多種對(duì)外集成方式的 DevOps 工具

對(duì)于滿足這些條件的工具,我們定義為API全生命周期智能協(xié)作平臺(tái)。在這個(gè)一體化平臺(tái)上,可以從API的開(kāi)發(fā)態(tài)到發(fā)布態(tài)到運(yùn)營(yíng)態(tài),對(duì)API進(jìn)行全生命周期管理。

平臺(tái)地址:https://www.eolink.com/apikit?utm_source=mo04sssjsh。

三、API全生命周期管理如何接入DevOps

根據(jù)經(jīng)典的DevOps流程圖,我們從計(jì)劃、開(kāi)發(fā)、構(gòu)建、測(cè)試、部署、發(fā)布、運(yùn)維跟監(jiān)控環(huán)節(jié),探討API管理工具對(duì)接。

1、計(jì)劃:制定API文檔規(guī)范,搭建層次清晰的API倉(cāng)庫(kù)

  • 根據(jù)公司組織架構(gòu)和系統(tǒng)服務(wù)的分布,組成一個(gè)層次清晰的接口倉(cāng)庫(kù)。
  • 統(tǒng)一規(guī)范制定,把不同團(tuán)隊(duì)的規(guī)范統(tǒng)一制定成公司的規(guī)范。
  • 整理公共材料,把歷史文檔快捷地導(dǎo)入到 API 倉(cāng)庫(kù)里,以及把一些可復(fù)用的材料例如經(jīng)常用的數(shù)據(jù)結(jié)構(gòu),API 文檔的模板、常用字段描述,都可以存儲(chǔ)到 API 倉(cāng)庫(kù),以便于在開(kāi)發(fā)階段創(chuàng)建新的 API 文檔。

2、開(kāi)發(fā):基于代碼倉(cāng)庫(kù)搭建自動(dòng)化流程,解決前后端調(diào)試和溝通問(wèn)題

基于代碼倉(cāng)庫(kù)或swagger或本地研發(fā)工具,快速自動(dòng)生成API文檔并快速調(diào)試,調(diào)試沒(méi)問(wèn)題后再自動(dòng)生成 MOCK API和批量接口用例,可以在線分享給前端和測(cè)試,文檔支持在線評(píng)論。最終還可以基于這個(gè) API 文檔生成業(yè)務(wù)代碼,協(xié)助開(kāi)發(fā)。

3、構(gòu)建:自動(dòng)打接口版本及自動(dòng)冒煙測(cè)試,支持回滾和減輕測(cè)試工程師壓力

構(gòu)建階段可以基于 CI 觸發(fā)器自動(dòng)構(gòu)建接口版本,方便后續(xù)版本回滾,還可基于接口版本做批量測(cè)試,以及做版本差異化的對(duì)比。

這兩個(gè)步驟可以讓測(cè)試對(duì)任務(wù)進(jìn)行評(píng)估,更好地去減輕測(cè)試的壓力。目前接口上自動(dòng)化能測(cè)出來(lái)的問(wèn)題,可預(yù)先通過(guò)API測(cè)試出來(lái)。

4、測(cè)試:推進(jìn)自動(dòng)化測(cè)試,降低用例編寫(xiě)成本

在測(cè)試階段我們推薦自動(dòng)化測(cè)試,一體化API全生命周期管理工具可以去快速同步前面開(kāi)發(fā)階段生成的測(cè)試用例,然后對(duì)這些測(cè)試用例進(jìn)行流程編排,組成自動(dòng)化測(cè)試用例。也可以基于 API 網(wǎng)關(guān)的監(jiān)控日志做流量回放,自動(dòng)生成自動(dòng)化測(cè)試用例,識(shí)別增量接口并跑模糊測(cè)試??梢越M成場(chǎng)景案例,做回歸測(cè)試。模糊測(cè)試跟回測(cè)試的測(cè)試結(jié)果發(fā)送測(cè)試報(bào)告,給到對(duì)應(yīng)的測(cè)試人員。

5、部署:快速測(cè)試核心流程,排除環(huán)境差異問(wèn)題

部署之后可以通過(guò) CD 觸發(fā)器對(duì)環(huán)境進(jìn)行預(yù)測(cè),試跑核心的測(cè)試場(chǎng)景,生成對(duì)應(yīng)的測(cè)試報(bào)告。可以通過(guò)多環(huán)境的測(cè)試結(jié)果進(jìn)行對(duì)比,排查環(huán)境差異的問(wèn)題,也可以在部署好之后進(jìn)行壓力測(cè)試。(注:目前Eolink Apikit壓力測(cè)試功能將在年中上線,敬請(qǐng)期待)

6、發(fā)布:確保對(duì)外訪問(wèn)暢通和安全

在發(fā)布階段,主要對(duì)接 API 網(wǎng)關(guān),讓系統(tǒng)可以正常對(duì)外訪問(wèn),開(kāi)放接口能力。

7、運(yùn)維:保障服務(wù)持續(xù)穩(wěn)定和安全

在運(yùn)維階段依然是使用 API 網(wǎng)關(guān),做流量控制、負(fù)載均衡或服務(wù)治理。在接口開(kāi)放上可以去做Open API 調(diào)用管控,在線試用跟鑒權(quán)。在接口交易上可以去做接口托管、轉(zhuǎn)發(fā)跟計(jì)算計(jì)費(fèi)以及訂單管理。

8、監(jiān)控:實(shí)時(shí)觀察接口運(yùn)行情況,及時(shí)異常告警

可以設(shè)置標(biāo)準(zhǔn)的接口監(jiān)控指標(biāo),做更加靈活的監(jiān)控配置,并對(duì)告警進(jìn)行規(guī)則配置預(yù)設(shè),當(dāng)滿足這些告警的預(yù)設(shè)條件時(shí)就會(huì)發(fā)送消息通知,包括手機(jī)短信、主流的 IM 工具,以及webhook。

在消息通知方面,我們認(rèn)為不僅僅需要DevOps主流程的對(duì)接,而是要保證整個(gè)DevOps信息流的有效和及時(shí)傳遞,因此需要對(duì) API 文檔的變更、測(cè)試報(bào)告、監(jiān)控告警,進(jìn)行智能分發(fā)。例如進(jìn)行分級(jí)推送、智能歸納、高風(fēng)險(xiǎn)標(biāo)記等。

【重磅】DevOps工作流對(duì)接API全生命周期管理全流程圖

四、不同規(guī)模團(tuán)隊(duì)如何落地實(shí)施

1、大規(guī)模團(tuán)隊(duì):全DevOps周期的接口自動(dòng)化

對(duì)于大規(guī)模團(tuán)隊(duì)來(lái)說(shuō),推薦基于DevOps全周期的接口自動(dòng)化方案,需部署Eolink Apikit私有云版本。在這個(gè)方案中,可以把Swagger的URL自動(dòng)同步到Eolink Apikit,自動(dòng)生成文檔,進(jìn)一步基于文檔生成業(yè)務(wù)代碼,然后發(fā)送到代碼倉(cāng)庫(kù),再去觸發(fā)CI流水線,給文檔打版本,做模糊測(cè)試,并把報(bào)告發(fā)送給對(duì)應(yīng)的人員。接下來(lái)在CD環(huán)節(jié)部署好服務(wù)之后,可以對(duì)環(huán)境進(jìn)行預(yù)測(cè)試,并根據(jù)需求做壓力測(cè)試,并把測(cè)試報(bào)告發(fā)送給對(duì)應(yīng)的相關(guān)人員。除了CICD,還可以集成Eolink的網(wǎng)關(guān)產(chǎn)品,對(duì)API進(jìn)行運(yùn)維管理。

2、小規(guī)模團(tuán)隊(duì):高性價(jià)比的接口自動(dòng)化

對(duì)于小規(guī)模團(tuán)隊(duì)來(lái)說(shuō),性價(jià)比更高的SaaS企業(yè)版,可以使用插件生成API文檔上傳Eolink Apikit,并進(jìn)行測(cè)試,自動(dòng)生成測(cè)試用例。

目前該高性價(jià)比解決方案,已覆蓋從設(shè)計(jì)、開(kāi)發(fā)到構(gòu)建、發(fā)布、部署的環(huán)節(jié),對(duì)運(yùn)維、監(jiān)控、壓力測(cè)試等環(huán)節(jié)尚且缺失,對(duì)于核心的API全自動(dòng)化的管理流程已完全足夠。

總結(jié)

本文提出使用一體化的API管理平臺(tái)在DevOps工作流中對(duì)API進(jìn)行全生命周期管理,解決過(guò)去多個(gè)工具之間數(shù)據(jù)隔離、流程阻滯的問(wèn)題。

API全生命周期管理平臺(tái)Eolink Apikit是結(jié)合 API 設(shè)計(jì)、文檔管理、自動(dòng)化測(cè)試、監(jiān)控、研發(fā)管理和團(tuán)隊(duì)協(xié)作的一站式 API 研發(fā)協(xié)作平臺(tái),是API研發(fā)管理最佳實(shí)踐產(chǎn)品,可以幫助個(gè)人開(kāi)發(fā)者到跨國(guó)企業(yè)用戶,快速、規(guī)范地對(duì)API進(jìn)行全生命周期管理,提高研發(fā)效能。

平臺(tái)地址:https://www.eolink.com/apikit?utm_source=mo04sssjsh。


文章名稱:一篇文章帶給你DevOps如何管理API?
轉(zhuǎn)載來(lái)于:http://www.5511xx.com/article/cdeidhp.html