Ọnụ ụzọ ámá API na Ngwa njikwa 10 kacha mepere emepe


Microservices na API (mkpụmkpụ maka ngwa mmemme Interfaces) abụrụla ihe a na-ahụkarị na mmepe ngwa ọgbara ọhụrụ na-adigide. API na-akwagharị microservices (atụmatụ ụkpụrụ ụlọ nke na-ahazi ngwa n'ime obere ọrụ, nke nwere onwe na nke enwere ike ijikwa ya) na ha na-akọwapụta ka onye na-azụ ahịa (nke API) nwere ike isi na-emekọrịta ihe ma jiri ọrụ dị n'okpuru.

Nye ndị azụmaahịa na otu ndị ọzọ, API abụrụla isi nke atụmatụ mgbanwe dijitalụ. Mmụba n'iji API eme ihe amụbaala ojiji nke njikwa njikwa API site n'aka ndị mmepe na-ebipụta API ha na ọha ma ọ bụ ndị mmepe mpụga, ndị mmepe ime yana yana ndị mmekọ ndị ọzọ.

Ngwa njikwa API nwere ike inyere gị aka:

  • Gosipụta microservice dị ka API jisiri.
  • Jikọta ọtụtụ microservices ka ekpughere dị ka API.
  • Tụnye nchekwa na microservice nke ime na mpụga.
  • Gosipụta ọrụ nketa dị ka API ọgbara ọhụrụ.
  • Nweta nghọta azụmahịa site na iji microservices na API, yana ọtụtụ ndị ọzọ.

Ị na-achọ ngwọta njikwa API mepere emepe maka ụlọ ọrụ gị? Mgbe ahụ, e mere ntuziaka a maka naanị gị, gaa n'ihu na-agụ.

N'okpuru ebe a, anyị ekekọrịtala ọnụ ụzọ API mepere emepe iri kachasị elu yana ngwọta njikwa API ị nwere ike iji na akụrụngwa IT gị. Rịba ama na ahaziri ndepụta ndị a n'enweghị usoro ọ bụla.

1. Kong Gateway (OSS)

Asụsụ mmemme Lua ma na-akwado akụrụngwa ngwakọ na igwe ojii, yana ahaziri ya maka microservices na ihe owuwu ekesa.

N'isi ya, e wuru Kong maka ịrụ ọrụ dị elu, ikesa ya na mbugharị. Kong dịkwa fechaa, dị ngwa, yana ịrị elu. Ọ na-akwado nhazi nkwupụta na-enweghị nchekwa data, na-eji naanị nchekwa ebe nchekwa, yana Kubernative CRDs.

Kong na-egosipụta nguzozi ibu (ya na algọridim dị iche iche), ịkọ osisi, nyocha (nkwado maka OAuth2.0), njedebe ọnụego, mgbanwe, nleba anya ndụ, nchọpụta ọrụ, caching, nchọpụta ọdịda na mgbake, nchịkọta, na ọtụtụ ndị ọzọ. Nke dị mkpa, Kong na-akwado nchịkọta ọnụ ọnụ na ọrụ enweghị ihe nkesa.

Ọ na-akwado nhazi nke proxies maka ọrụ gị, ma na-ejere ha ozi na SSL, ma ọ bụ jiri WebSockets. Ọ nwere ike ibuba okporo ụzọ nguzozi site na ụdị nke ọrụ mgbago gị, nyochaa ịdị adị nke ọrụ gị, ma mezie nhazi ibu ya nke ọma.

Na mgbakwunye, ụgbọ mmiri Kong nwere interface ahịrị iwu na-enye gị ohere ijikwa ụyọkọ Kong site na ahịrị iwu. Ọzọkwa, Kong bụ nke ukwuu site na iji plugins na ụdị ntinye dị iche iche. Enwere ike ijikwa ya RESTful API maka ngbanwe kachasị.

2. Tik

Gaa asụsụ mmemme. Ọ bụ obodo igwe ojii, ọ na-arụ ọrụ nke ukwuu yana ihe owuwu nwere ike ime ngwa ngwa yana pluggable dabere na ụkpụrụ mepere emepe.

Ọ nwere ike na-agba ọsọ n'onwe ya ma na-achọ naanị Redis dị ka ụlọ ahịa data. Ọ na-enye ndị ọrụ ohere ibipụta na jikwaa ọrụ dị iche iche nke ọma gụnyere ihe nketa, REST na GraphQL (na-akwado GraphQL n'ime igbe).

A na-eji ọtụtụ atụmatụ eme Tyk nke gụnyere ụzọ nyocha dị iche iche, oke, na njedebe ọnụego, njikwa ụdị, ọkwa na mmemme, nleba anya na nyocha. Ọ na-akwado nchoputa ọrụ, mgbanwe na-efe efe, na ebe njedebe mebere, ma na-enye ohere maka ịmepụta API ndị na-akwa emo tupu ahapụ ya.

Karịa nke a dị n'elu, Tyk na-akwado akwụkwọ API ma na-enye Portal Onye Mmepụta API, CMS (Sistemụ Njikwa Ọdịnaya) -dị ka sistemụ ebe ị nwere ike ibipụta API ndị ejiri njikwa yana ndị mmepe nke ndị ọzọ debanyere aha, debanye aha na API gị, wee nwee ike ijikwa ha. igodo nke onwe.

Nke dị mkpa, enwere naanị otu ụdị nke ọnụ ụzọ ámá Tyk API ma ọ bụ 100% mepere emepe. Ma ị bụ onye ọrụ mbipụta Community ma ọ bụ onye ọrụ ụlọ ọrụ, ị ga-enweta otu ọnụ ụzọ API ahụ. Ọ na-ebugharị akụkụ niile enwere ike achọrọ maka iji ya zuru oke, na-enweghị mkpọchi atụmatụ yana enweghị igbe ojii. Site na Tyk, ị ga-amata nke ọma ka esi ahazi data gị.

3. KrakenD

Edekwara ya na Go, ma jiri arụmọrụ rụọ ya n'uche, KrakenD bụ isi mmalite mepere emepe dị elu, dị mfe, yana pluggable API nke ejiri ụkpụrụ ụlọ na-enweghị obodo emebere ya. Ọ nwere ike na-agba ọsọ n'ebe niile na-achọ ka ọ dịghị nchekwa data na-agba ọsọ. Ọ nwere nhazi dị mfe ma na-akwado njedebe na-akparaghị ókè na azụ azụ.

KrakenD nwere nleba anya, caching, oke onye ọrụ, mmachi ọnụego, ịdịmma ọrụ (oku na-eme n'otu oge, sekit na-agbaji, na oge mkpụrụ ọka) ngbanwe, mkpokọta, (isi mmalite jikọtara), nzacha (ncha ọcha na ndetu ojii), na ngbanwe. Ọ na-enye atụmatụ proxy dị ka ndozi ibu, ntụgharị protocol, na Oauth; yana atụmatụ nchekwa dị ka SSL na amụma nchekwa.

Ị nwere ike hazie omume ọnụ ụzọ API site n'aka ma ọ bụ jiri KrakenDesigner, GUI na-enye gị ohere ịmepụta API gị site na ọkọ ma ọ bụ maliteghachi nke dị adị. Ọzọkwa, KrakenD's extensible architecture na-enye ohere ịgbakwunye ọrụ ndị ọzọ, nkwụnye ins, scripts agbakwunyere, na middlewares na-enweghị ịgbanwe koodu isi mmalite ya.

4. Gravitee.io API Platform

Gravitee.io bụ isi mmalite mepere emepe, dabere na Java, usoro njikwa API dị mfe iji na-enyere ndị otu aka ichekwa, bipụta, nyocha na idekọ API ha. Ọ na-abịa na nnukwu modul atọ, nke bụ:

  • Njikwa API (APIM): isi mmalite mepere emepe, dị mfe ma dị ike, na-agbanwe agbanwe, dị fechaa na njikwa API ngwa ngwa (APIM) emebere iji nye ọgbakọ gị ikike zuru oke maka onye na-enweta API gị, mgbe na otu.
  • Njikwa Nweta (AM): mgbanwe, dị fechaa, dị mfe ma dị mfe iji njirimara mepere emepe na njikwa nnweta. Ọ dabere na OAuth2/OpenID Jikọọ protocol ma na-eme dị ka onye na-eweta njirimara. Ọ nwere ọrụ nyocha na ikike nke etinyere n'etiti iji chekwaa ngwa gị yana API gị.
  • Alert Engine (AE): modul nke na-enye ndị ọrụ ohere ịhazi ọkwa ma nata ọkwa ka ọ dị mfe na nke ọma nyochaa ikpo okwu API ha. Ọ na-akwado ọkwa ọtụtụ ọwa yana nchọpụta omume enyo, yana ndị ọzọ.

Ọzọkwa, Gravitee.io na-eji Cockpit na-ebu ụgbọ mmiri, ngwa na-enyere gị aka chepụta API gị wee bipụta ha n'ofe gburugburu gị niile site na nkwado ụlọ n'ụzọ zuru oke. Ọ na-enyere gị aka ịbawanye ibunye Gravitee.io gị site na ikpo okwu n'onwe ya. Na graviteeio-cli, ngwa ọrụ ahịrị iwu dị mfe eji jikwaa sistemụ eco-Gravitee.io.

5. Gloo Edge

Ọzọkwa na-emeghe-isi na Go-based, Gloo Edge bụ ihe juru n'ọnụ Kubernetes-nwa amaala ingress njikwa (nke e wuru n'elu nke Envoy Proxy) yana ọnụ ụzọ API igwe ojii na-esote nke na-akwado ngwa ọdịnala, microservices yana enweghị ihe nkesa. . Ọ na-ejikọta ya na gburugburu ebe obibi gị na-enye gị ohere ịhọrọ ngwaọrụ kachasị amasị gị maka nhazi oge, nnọgidesi ike na nchekwa.

Ọ na-enye ụzọ nhazi ọkwa ọrụ siri ike (nke na-enye ohere ijikọ ngwa ọdịnala, microservices na enweghị nkesa) ma emebere ya iji kwado ngwa ngwakọ ejiri ụdị teknụzụ dị iche iche, ụkpụrụ ụlọ na ụkpụrụ na-agba n'igwe ojii dị iche iche.

Gloo Edge na-akwado atụmatụ ọnụ ụzọ API dị ka mmachi ọnụego, mgbaji sekit, nwegharịa, caching, nyocha mpụga, na ikike. Ọ na-akwado mgbanwe, ntinye ntupu ọrụ, nchọpụta akpaaka zuru oke, yana nchekwa.

Gloo Edge na-eji ọrụ mmeghe dị elu dị ka GraphQL, gRPC, OpenTracing, NATS na ndị ọzọ, iji nye atụmatụ dị elu. E wezụga nke ahụ, ọ na-akwado ntinye aka nke ọrụ mmeghe nke nwere ike ịmalite n'ọdịnihu.

6. Goku API ọnụ ụzọ ámá

Ọnụ ụzọ ámá Goku API bụ ọnụ ụzọ microservice mepere emepe nwere ihe owuwu igwe ojii ejiri Go. Ọ na-arụ ọrụ dị ka ọnụ ụzọ API nke microservices architecture; dị ka ikpo okwu maka nkwenye dị n'otu, njikwa ọsọ, nchebe nchebe; dị ka usoro mmepe OPEN API dị n'ime; yana dịka ikpo okwu ejikọtara ọnụ maka API ndị ọzọ.

Ọ na-egosipụta ntugharị HTTP dị elu yana ntugharị siri ike, nhazi ọrụ, njikwa ọtụtụ ụlọ, njikwa nnweta API, na ndị ọzọ. Ọ na-akwado nbunye ụyọkọ na ndebanye aha ọrụ siri ike, ndozi ibu azụ azụ, nlele ahụike API, nkwụsị API ma jikọọ ọrụ, nwelite ọkụ (na-aga n'ihu na-emelite nhazi na-enweghị mmalite mmalite).

Goku na-abịa na dashboard arụnyere n'ime iji mee ka nhazi dị mfe, usoro nkwụnye ike ịgbatị ọrụ ya, yana CLI maka mmalite nkwụsị. eload Goku site na ahịrị iwu.

7. WSO2 API Microgateway

WSO2 API Microgateway bụ obodo mepere emepe igwe ojii, onye nrụpụta-centric, yana ọnụ ụzọ API emebere ya maka obere ọrụ. Ewubere ya site na iji Java, ọ na-eme ka usoro nke imepụta, ibugharị na ichekwa API dị mfe n'ime ụlọ ọrụ microservice ekesa.

WSO2 API Microgateway bụ akpa enweghị steeti dị fechaa nke nwere akara ukwu ebe nchekwa dị ala, nke na-akwado ịdepụta ọtụtụ microservices site na otu API ma na-akwado nchọpụta ọrụ oge. Ọ na-enye ohere ịgbanwe ụdị API nke ketara (ma arịrịọ yana nzaghachi) nye ndị ọgbara ọhụrụ, ikpughe ha na ngwa ndị ahịa ọgbara ọhụrụ.

N'ihi na WSO2 API Microgateway na-eji OpenAPI Specification (OAS), nke a na-enyere ndị mmepe aka imekọ ihe ọnụ n'imepụta API wee nwalee ha n'onwe ha. Ọzọkwa, ọ bụ nke ukwuu scalable ka ọ nwere ike na-agba ọsọ na iche na-enweghị ndabere na ndị ọzọ components.

Ọ na-egosipụta njedebe ọnụego, nchọpụta ọrụ, arịrịọ na ngbanwe nzaghachi, ndozi ibu, ọdịda, na mgbawa sekit, ntinye Docker na Kubernetes enweghị nkebi n'etiti ndị ọzọ. Ọ na-enye nyocha na ikike dabere na OAuth2.0, igodo API, Basic Auth, na TLS ibe.

8. Fusio

Fusio bụ isi mmalite mepere emepe, ngwa njikwa API dabere na PHP ejiri wulite ma jikwaa API REST. Ọ bụ usoro njikwa API n'echiche na ọ na-enye gị ohere ịmepụta njedebe API nke nwere ike ịrịọ ma gbanwee data site na nchekwa data. Ọ na-enye ngwaọrụ niile dị mkpa ọ bụghị naanị iji wuo API ngwa ngwa site na isi mmalite data dị iche iche kamakwa imepụta nzaghachi ahaziri nke ọma.

A na-eji ya kpughee ọrụ azụmahịa, microservices, ngwa Javascript na ngwa mkpanaaka, na-enye atụmatụ dị ka njedebe ọnụego, ikike, nkwado RPC, nkwado, nyocha, na njikwa onye ọrụ.

Ọzọkwa, Fusio na-akwado ọgbọ OpenAPI, ọgbọ SDK, wee bịa na oyi akwa ndenye aha iji nyere gị aka wuo ụlọ mmanya/sub maka API gị, yana usoro ịkwụ ụgwọ dị mfe iji kwụọ ụgwọ maka ụzọ ụfọdụ.

Fusio nwere onye ahịa-akara iwu nke na-enye gị ohere ịmekọrịta API ozugbo wee wepụta faịlụ nhazi YAML akọwapụtara. A na-etinye Fusio-CLI na-akpaghị aka na nrụnye Fusio ọ bụla mana ị nwekwara ike ịgba ọsọ onye ahịa CLI naanị ya. Ndị a bụ ọtụtụ ngwaọrụ ndị ọzọ na gburugburu Fusio.

9. Apiman

Apiman bụ isi mmalite mepere emepe, ngwa njikwa API nke dabere na ya nke na-ebufe API nwere nnukwu imewe yana nhazi nhazi yana oge ọsọ ọsọ na-ekpo ọkụ. Ọ bụ sistemụ kwụ ọtọ nke enwere ike ịgba ọsọ dị ka sistemụ dị iche ma ọ bụ tinye ya n'ime usoro na nyiwe dị adị.

Ihe ndị bụ isi ya bụ mgbanwe na ọchịchị oge ịgba ọsọ dabere na amụma maka API, oyi akwa njikwa bara ụba, yana asynchronous ya zuru oke. Ọ na-akwado throttling na oke, nchekwa etiti, yana ịgba ụgwọ na metrik, yana ọtụtụ atụmatụ ndị ọzọ.

10. API nche anwụ

API Umbrella bụ usoro njikwa API mepere emepe nke ejiri Ruby rụọ nke ukwuu. Ọ bụ proxy na-anọdụ n'ihu API gị na-enye gị ohere ịmepụta otu ebe ntinye ọhaneze na API na microservices gị niile n'agbanyeghị ebe ọ dị. Ọ na-enye ọrụ dị ka igodo API, mmachi ọnụego, nyocha, na caching.

Ọ na-akwado multitenancy ma na-abịa na Admin iji jikwaa akụkụ niile nke API Umbrella, dị ka nhazi nhazi API, njikwa ọrụ, nyocha nlele, na ndị ọzọ. N'okpuru API Umbrella, ọrụ nhazi niile dịkwa site na REST API.

Nke ahụ bụ maka ugbu a! N'ime edemede a, anyị enyochala ọnụ ụzọ API mepere emepe 10 yana ngwọta njikwa ị nwere ike iji na sava Linux, n'ime akụrụngwa gị. Enwere onwe gị ime ka anyị mata azịza ọ bụla ọzọ ị nwetara mana anyị agbagharala n'isiokwu a.