Programmēšana

10 labākie API pārvaldības rīki

Mūsdienu biznesa pasaule ir balstīta uz programmatūru un API. Jebkurai lietojumprogrammai, neatkarīgi no tā, vai tā ir publiska vai privāta, ir nepieciešamas jaudīgas un ērtas API, lai tās būtu patiesi noderīgas. API veidošana un uzturēšana ir smags darbs, tāpēc nav brīnums, ka ap API pārvaldību ir izveidojušās veselas programmatūras klases.

Lielākā daļa API pārvaldības produktu nodrošina kopīgu funkciju sajūtu: maršrutēšana un starpniekservēšana, datu un URL pārveidošana, informācijas paneļi un analīze, politikas un ierobežojumi, kā arī izstrādātāju rīki, piemēram, dokumentācijas ģeneratori. Šeit mēs aplūkosim 10 populārus API pārvaldības rīkus - atvērtā pirmkoda projektus, komerciālus produktus, mākoņpakalpojumus un to maisījumus -, kas piedāvā visu, sākot no pilna servisa komplekta API līdz koncentrētiem rīkiem konkrētiem scenārijiem.

3 mērogs

Sākotnēji slēgta pirmkoda produkts, 3scale iegādājās Red Hat, un tas tika atvērts pēc apmēram divu gadu darba. Atvērtā koda projektu var brīvi izmantot ar Apache licenci, savukārt Red Hat piedāvā komerciāli atbalstītu SaaS ieviešanu.

3scale funkcijas atbilst pārējiem šī apkopojuma piedāvājumiem. Jūs atradīsit API versijas, piekļuves kontroli un ātruma ierobežojumus, drošības vadīklas un analīzi. 3scale piedāvā arī izstrādātājiem draudzīgas funkcijas, piemēram, izstrādātāju portālu un CMS, lai izveidotu dokumentāciju savas API. 3scale piedāvā arī vietējos rīkus, lai gūtu peļņu no API, piemēram, rēķinu izrakstīšanu un integrāciju ar maksājumu pakalpojumiem.

Ja plānojat pats instalēt 3scale ražošanai, jums būs nepieciešamas Oracle Database un OpenShift. Ņemot vērā to, ka pat minimālai 3 skalas instalēšanai testēšanai ir nepieciešama Minishift, viena mezgla OpenShift kopa, iespējams, vislabāk jūs izmantojat, izmantojot 3scale bezmaksas 90 dienu izmēģinājuma versiju, ja vēlaties sākt pēc iespējas ātrāk.

Pro versija sākas ar 750 USD mēnesī 5000 izstrādātāju kontiem, 500 000 API izsaukumiem dienā un līdz trim API. Enterprise versija (cena ir pieejama pēc pieprasījuma) novērš lielāko daļu šo ierobežojumu.

Vēstnieks

Ambassador ir atvērtā koda API pārvaldības sistēma, kas izveidota darbam ar Kubernetes. Vēstnieks tiek ieviests virs sūtņa starpniekservera, kas veic tīkla abstrakciju mikropakalpojumiem, tāpēc lielāko daļu smagā celšanas veic sūtnis un Kubernetes.

Vēstnieka funkciju kopums atbilst lielākajai daļai citu esošo API pārvaldības rīku: URL pārrakstīšana un pieprasījumu maršrutēšana, filtrēšana, autentifikācija un piekļuves kontrole, ātruma ierobežošana un taimauts, kā arī integrācija ar reģistrēšanas, problēmu novēršanas un redzamības rīkiem.

Tomēr lielākā daļa vēstnieka funkciju ir saistīta ar izpildlaika pārvaldību un integrāciju ar Kubernetes un citiem Kubernetes rīkiem (piemēram, Prometejs). Vēstnieks API dizainu un deklaratīvo konfigurāciju pilnībā atstāj lietotāja ziņā. Tādas funkcijas kā API versijas netiek atbalstītas dabiski; ar šādām lietām jārīkojas pašiem. Tas padara vēstnieku vispiemērotāko darbam ar API kā daļu no Kubernetes izvietošanas, nevis kā vispārēju API pārvaldības risinājumu.

Apimans

Apimans - agrāk “JBoss Apiman” - ir Red Hat atvērtā koda projekts, kas būvēts Java. Lai gan Red Hat to joprojām uztur, lielākā daļa Red Hat aktīvo API pārvaldības attīstību, šķiet, ir pārcēlusies uz tā 3Scale produktu.

Apimans koncentrējas uz pamatiem - API publicēšanu un pārvaldību, uz lomām balstītas piekļuves nodrošināšanu šīm funkcijām, politikas iestatīšanu attiecībā uz API lietošanu, izpildlaika un norēķinu metrikas apkopošanu un visu šo elementu augšupejošas organizatoriskās struktūras izveidi.

Apimans var iestatīt API politikas saistībā ar drošību, resursiem (piemēram, ātruma ierobežošanu), datu pārveidošanu, kešatmiņu un reģistrēšanu. Politikas tiek konfigurētas, izmantojot JSON, tāpēc tās var lasīt un rediģēt gan cilvēki, gan mašīnas. Drošības politikas var piemērot, izmantojot lietotāja identitāti vai lomu, un API var brīvi vai stingri kontrolēt. Jūs varat publicēt API ar pārskatīšanas ID vietrādī URL un ar to lietošanu nesaistītu līgumu; vai arī jūs varat pieprasīt API atslēgu un rūpīgi pārvaldīt to versiju.

Lielākā daļa jebko, kas pārsniedz pamatus, ir jūsu atbildība. Piemēram, lai gan ir pieejami vairāki Apiman spraudņi, tie parasti ir nelieli Apiman funkcionalitātes paplašinājumi, ko nodrošina galveno projektu uzturētāji.

DreamFactory

DreamFactory API pārvaldības platforma ir veidota ar Laravel ietvaru PHP. DreamFactory ir pieejams kā bezmaksas atvērtā pirmkoda piedāvājums vai ar dažāda līmeņa komerciālu atbalstu (cenas nav atklātas). Tā ir dabiska izvēle izstrādātājiem, kuri jau ir ieguldījuši PHP un kuri vēlas iedziļināties atvērtā koda ieviešanā. DreamFactory piedāvā arī servera puses skriptu integrāciju ar Node.js un Python.

DreamFactory funkcija “Datamesh”, kas ir pieejama visās komplektācijās visās tās iemiesojumos, ļauj apvienot vairāku, neviendabīgu datu bāzes zvanu rezultātus, tostarp dažādus datu bāzes produktus, un atgriezt rezultātus kā vienu API izsaukumu. Tāpat tabulu atjauninājumus vairākās datu bāzēs var apvienot vienā API izsaukumā.

DreamFactory dokumentācijā trūkst vienota kanoniska visu meklējamo visu pieejamo pakalpojumu saraksta. Informācija ir sakārtota pēc kategorijas, tāpēc jums ir jāveic manuāla izpēte, lai uzzinātu, kas ir pieejams. Pozitīvi ir tas, ka dokumentos ir iekļauti daudzi videoklipi par lietošanu, piemēram, vienkāršas lietojumprogrammas iestatīšana vai savienošana ar dažādiem datu avotiem.

Kong

Kong ir viens no pazīstamākajiem API pārvaldības rīkiem, kuru sākotnēji izveidoja Mashape (pārdēvēts par Kong), lai darbinātu savu API tirgus laukuma produktu. Kong ir pieejams atvērtā pirmkoda izdevumā vai uzņēmuma līmeņa komerciālā piedāvājumā (cenas nav atklātas) ar papildu pārvaldības, uzraudzības un izstrādātāja funkcijām. Uzņēmuma izdevums var darboties uz vietas vai izvēlētajā mākoņpakalpojumā. Gan atklātā pirmkoda, gan uzņēmuma produktu dokumentācija ir plaša un detalizēta.

Kong nodrošina Ingress kontrolieri Kubernetes integrācijai un pakalpojumu tīklu, lai ļautu Kong funkcionalitāti “injicēt” esošajā pakalpojumu izvietošanā. Uzņēmuma izdevums piedāvā izstrādātāja portālu, kura mērķis ir atvieglot jaunu API izveidi un iepazīstināt jaunos izstrādātājus ar jūsu API kodu bāzi.

Kong parasti izmanto datu bāzi, bet var darboties arī bez datu bāzes režīmā, izmantojot JSON / YAML konfigurācijas failu un atmiņā esošo atmiņu. Tas ir labākais, ja izmantojat tikai vienu, minimālu mezglu, bet vēlaties maksimālu veiktspēju.

KrakenD

KrakenD, kas rakstīts portālā Go, nodrošina tikai vissvarīgākās lietas, bet par galveno funkciju izceļ augstu veiktspēju. KrakenD tiek piegādāts kā viens atsevišķs binārs fails, kā tas ir lielākajā daļā Go iebūvēto lietojumprogrammu. Alternatīvi, to var apkopot no avota vai izmantot kā Go bibliotēku, ja vēlaties izveidot savu lietojumprogrammu ap to.

KrakenD izmanto konfigurācijas failu, kuru var savietot ar roku vai ģenerēt mašīnā. Likmes ierobežošana, manipulēšana ar atbildēm, pārsūtīšana, galapunkta atkļūdošana, protokola drošības pasākumi (piem., Aizsardzība pret klikšķu bloķēšanu), starpniekserveri, darbības un atmiņas atbildes kešatmiņa tiek atbalstīti ārpus kastes.

Lai nodrošinātu augstu pieejamību, KrakenD gadījumus var apvienot. Lai to izdarītu, nav nepieciešama papildu programmatūra, tikai pati KrakenD. Jūs varat arī izvietot KrakenD pāri Kubernetes kopai bez īpaša papildu darba. Trešās puses starpprogrammatūras sortimentu var iegūt KrakenD GitHub repozitorijā.

Uzņēmumu atbalstu, tostarp konsultācijas un apmācību, var saņemt no KrakenD veidotājiem, lai gan cenas netiek atklātas.

MuleSoft Anypoint platforma

MuleSoft Anypoint platforma ir domāta kā pilnīgs piedāvājums - tā aptver API dizainu, būvniecību, mitināšanu, pārvaldību, integrāciju un izstrādātāju atbalstu vienā komerciālā produktā.

Izmantojot Anypoint, varat izstrādāt API no jauna vai atkārtoti izmantot esošos savienotājus un integrācijas, ko izveidojuši citi MuleSoft klienti un koplietojuši Anypoint Exchange. Savienotāji ir pieejami vispārīgiem protokoliem (piekļuve failiem, HTTP, e-pasts), valodas moduļiem datu pārveidošanai (Java, JavaScript), mākoņpakalpojumiem (Amazon AWS), komerciālām lietojumprogrammām (Salesforce, SAP) un atvērtā pirmkoda lietojumprogrammām (MongoDB).

Tiem, kas veido API, kurus patērēs partneri vai sabiedrība, Anypoint nodrošina API kopienas pārvaldniekam tīmekļa interfeisu izveidošanu - ko MuleSoft sauc par “portāliem” - šīm API. Ir iekļauta interaktīvā dokumentācija, personalizēšana (ieskaitot tādas funkcijas kā produkcijas pielāgošana, pamatojoties uz lietotāja ģeogrāfisko atrašanās vietu) un API lietošanas analīze.

Anypoint piedāvā trīs cenu plānus: zelta, platīna un titāna, kas atšķiras atkarībā no klientu atbalsta līmeņa un uzņēmuma funkcijām. Visi trīs plāni ietver neierobežotu API un papildus maksā par “premium” savienotājiem (piemēram, IBM AS / 400 lieldatora savienotāju).

Netflix Zuul

Netflix inženieru izveidotais atvērtā koda projekts Zuul tika uzbūvēts uz vietas, lai apstrādātu maršrutēšanas pieprasījumus uz Netflix video straumēšanas pakalpojumiem. Nav komerciāla Zuul piedāvājuma - vismaz ne no Netflix -, tāpēc jums būs jāpagriež Zuul un jāpārvalda pilnībā.

Zuul ir rakstīts Java valodā, un, lai sāktu darboties, tas izmanto parastos Java rīkus - Gradle, Ivy, Maven. Zuul piedāvā salīdzinoši minimālu funkciju kopumu, salīdzinot ar citām API pārvaldības sistēmām, koncentrējoties uz ienākošo pieprasījumu filtrēšanu un nosūtīšanu visos pakalpojumos. Zuul nodrošina pakalpojumu atklāšanu, slodzes līdzsvarošanu, savienojumu apvienošanu un atkļūdošanas funkcijas (“pieprasījuma pasi”), taču trūkst sarežģītāku funkciju, piemēram, izstrādātāja iebūvēšanas un automātiskās dokumentācijas.

Zuul ir aktīvs projekts ar daudzām jaunām funkcijām, kas paredzētas nākamajām versijām. Piemēram, gaidāmais “brownout filtrs” atspējos noteiktas funkcijas, lai atbrīvotu CPU augstas aktivitātes periodos.

Tyk

Tyk pēc noklusējuma ietver ļoti daudz: API vārteju, analīzes rīkus, dev portālu un pārvaldības informācijas paneli. Tas ietver arī funkcionalitāti, lai izspēlētu API pirms to oficiālas izlaišanas, iebūvēto pieprasījumu kešatmiņu (ko var iekļaut tieši API definīcijā) un atbildes veidnes dažādiem HTTP kļūdu kodiem.

Tyk ir pieejams četros izdevumos, katrs no tiem dažādiem lietošanas gadījumiem. Kopienas izdevums, Tyk atvērtā pirmkoda laidiens, ietver tikai vārteju, kas veic starpniekservēšanu, piekļuves kontroli, pārveidojumus un reģistrēšanu. Varat izmantot savas funkcijas tieši vai pieskaroties Tyk spraudņu ekosistēmai, nodrošinot atbalstu vairākām valodām.

Lokālais izdevums ļauj jums izmantot pilnu funkcionalitātes komerciālo produktu aiz ugunsmūra. Viena vārtejas licences - būtībā izstrādātāju izdevumi - ir pieejamas bez maksas, bez API izsaukuma ierobežojumiem, lai gan API nevar izmantot komerciālos iestatījumos. Licences komerciālai lietošanai sākas ar 3000 USD gadā.

Mākoņa un vairāku mākoņu izdevumi, kas pieejami dažādiem populāriem mākoņu pakalpojumiem, nodrošina Tyk kā mitinātu pakalpojumu. Pamata, viena mākoņa versija, kas atbalsta 1000 API izsaukumus dienā, ir pieejama bez maksas (neatkarīgi no tā, ko maksā jūsu mākoņa pakalpojumu sniedzējs); pro līmeņa plāni sākas ar USD 450 mēnesī.

WSO2 API pārvaldnieks

WSO2 API pārvaldnieks ir atvērtā koda produkts, kas veidots ar Java. Produkts ir pieejams izvietošanai uz vietas vai mākoņos, izmantojot komerciālu atbalstu, vai kā mākoņa pārvaldītu pakalpojumu.

Dažādas izvietošanas opcijas ļauj izmantot dažādus pārvaldības scenārijus. Piemēram, WSO2 izvietošanai uz vietas var nodrošināt, ka tās politikas un cita konfigurācija tiek izpildīta, izmantojot mākoņa mitinātu izstrādātāju portālu, ar izmaiņām vai nu sinhronizējot mākoni un telpas, vai periodiski virzot no mākoņa (vidēm, kurām jābūt aizslēgts).

WSO2 ir aptuveni 200 savienotāji, kurus var izmantot, lai piesaistītu ārējos pakalpojumus. Daudzi ir izplatīti izstrādātāju skavas: Slack, Splunk, Kafka, Redis, Amazon S3 un tā tālāk.

Vēl viena WSO2 funkcija, “API microgateway”, nodrošina, ka noteikta veida zvani saņem papildu drošību un zemāku latentumu. Piemēram, zvanus, ko izmanto vārtejas pārvaldīšanai, vai zvanus, kas tiek novirzīti starp mikropakalpojumiem, var apstrādāt šādā veidā.

Jauns WSO2 papildinājums papildina Kubernetes pakalpojuma Istio integrāciju. Istio nepārvalda API, ko eksponē pārziņā esošie mikropakalpojumi, tāpēc WSO2 integrējas ar Envoy starpniekserveri, kuru to izmanto Istio.

Cenu noteikšana WSO2 komerciālajiem piedāvājumiem sākas ar bezmaksas divu nedēļu izmēģinājumu ar līdz pat vienam miljonam API zvanu, turpina maksāt par 550 ASV dolāriem mēnesī par 20 miljoniem zvanu un no turienes palielina pasūtījuma konfigurācijas.

$config[zx-auto] not found$config[zx-overlay] not found