Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

I tukuna tata nei e matou te Kaiwhakahaere API InterSystems (IAM), he waahanga hou o te InterSystems IRIS Raraunga Raraunga e whakarato ana i te tirohanga, te mana whakahaere me te whakahaere i nga hokohoko API tukutuku puta noa i te hanganga IT.

I roto i tenei tuhinga, ka whakaatu ahau ki a koe me pehea te whakarite IAM me te whakaatu i etahi o nga kaha maha e waatea ana ki a koe me IAM. Kaiwhakahaere API InterSystems ka taea e koe te:

  • Aroturuki i te API, kia mohio ko wai e whakamahi ana i te API, ko nga API te mea tino rongonui, ko wai hoki e hiahia ana kia whakapai ake.
  • Whakahaerehia ko wai e whakamahi ana i te API me te whakawhāiti i te whakamahinga API mai i nga here uru ngawari ki nga here-a-tono - kei a koe te mana whakarite ka taea e koe te whakautu tere ki te whakarereke i nga tauira kai API.
  • Ko nga API Haumaru e whakamahi ana i nga tikanga haumarutanga o te pokapū penei i te OAuth2.0, LDAP, Motuhēhēnga Tohu Matua ranei.
  • Whakamaamaa ake mo nga kaiwhakawhanake-tuatoru me te whakarato ki a ratou he wheako API pai ake ma te whakatuwhera i te tomokanga kaiwhakawhanake i whakatapua.
  • Tauinehia te API me te whakarite kia iti noa te roanga whakautu.

He mea nui te whakahaere API mo te whakawhiti ki te SOA, ki te hoahoanga ratonga moroiti ranei, hei whakangawari i te whakaurunga i waenga i nga ratonga takitahi (micro), kia waatea ki nga kaihoko katoa o waho me o roto. Ko te mutunga, ka ngawari ake nga API hou ki te hanga, ki te pupuri, ki te kai.

Mena kei te whakamahi koe i te InterSystems IRIS, ka taea e koe te taapiri i te whiringa IAM ki to raihana. He kore utu te whiringa IAM mo nga kaihoko InterSystems IRIS, engari me tono koe i tetahi taviri raihana hou mai i InterSystems hei timata ki te whakamahi IAM.

Mena kaore ano koe i te whakamahi i te InterSystems IRIS kei te whakamahere koe ki te whakamatau i te Kaiwhakahaere API InterSystems, tena koa whakapā atu ki a InterSystems.

Te Tīmatanga me te Tāuta

Ka taea e nga kaihoko InterSystems te tango i te tohatoha IAM mai i te paetukutuku WRC wāhanga “Tohaina Pūmanawa” ka rere hei ipu Docker. Nga whakaritenga punaha iti rawa:

I te tuatahi, me tango e koe te ahua Docker (He mea nui! Ko te puranga me te WRC ehara i te ahua Docker, me wetewete koe, he ahua Docker kei roto):

docker load -i iam_image.tar

Ma tenei whakahau ka waatea te ahua IAM hei whakamahi i muri mai i runga i to tūmau. Ka rere a IAM hei ipu motuhake, no reira ka taea e koe te whakatau motuhake mai i InterSystems IRIS. Ko te whakahaere IAM me uru ki te InterSystems IRIS ki te tango raihana.

Whakaritea InterSystems IRIS:

  • Whakahohea te tono tukutuku /api/IAM
  • Whakahohehia te kaiwhakamahi IAM
  • Hurihia te kupuhipa kaiwhakamahi IAM

Inaianei me timata te ipu IAM. I roto i te puranga ka kitea e koe nga tuhinga iam-setup mo Windows me Unix (me Mac). Ka awhina enei tuhinga ki a koe ki te tautuhi tika i nga taurangi taiao, ka taea e te ipu IAM te hono ki te InterSystems IRIS. Anei tetahi tauira o te tuhinga e rere ana i runga i te Mac:

source ./iam-setup.sh 
Welcome to the InterSystems IRIS and InterSystems API Manager (IAM) setup script.
This script sets the ISC_IRIS_URL environment variable that is used by the IAM container to get the IAM license key from InterSystems IRIS.
Enter the full image repository, name and tag for your IAM docker image: intersystems/iam:0.34-1-1
Enter the IP address for your InterSystems IRIS instance. The IP address has to be accessible from within the IAM container, therefore, do not use "localhost" or "127.0.0.1" if IRIS is running on your local machine. Instead use the public IP address of your local machine. If IRIS is running in a container, use the public IP address of the host environment, not the IP address of the IRIS container. xxx.xxx.xxx.xxx               
Enter the web server port for your InterSystems IRIS instance: 52773
Enter the password for the IAM user for your InterSystems IRIS instance: 
Re-enter your password: 
Your inputs are:
Full image repository, name and tag for your IAM docker image: intersystems/iam:0.34-1-1
IP address for your InterSystems IRIS instance: xxx.xxx.xxx.xxx
Web server port for your InterSystems IRIS instance: 52773
Would you like to continue with these inputs (y/n)? y
Getting IAM license using your inputs...
Successfully got IAM license!
The ISC_IRIS_URL environment variable was set to: http://IAM:****************@xxx.xxx.xxx.xxx:52773/api/iam/license
WARNING: The environment variable is set for this shell only!
To start the services, run the following command in the top level directory: docker-compose up -d
To stop the services, run the following command in the top level directory: docker-compose down
URL for the IAM Manager portal: http://localhost:8002

Ka taea e koe te kite, ko te ingoa whakaahua katoa, te wahitau IP, te tauranga InterSystems IRIS me te kupuhipa mo te kaiwhakamahi IAM ko nga mea katoa e hiahia ana koe ki te timata.

Engari ki te whakahaere i te tuhinga, ka taea e koe te tautuhi i nga taurangi taiao ma te ringa:

ISC_IAM_IMAGE=intersystems/iam:0.34-1-1
ISC_IRIS_URL=http://IAM:<PASS>@<IP>:<PORT>/api/iam/license

Te whakatairanga

Inaianei ka whakarewahia te IAM ma te whakahaere i te whakahau:

docker-compose up -d

Ma tenei whakahau e whakarite nga ipu IAM me te whakarite kia tika nga mahi katoa. Ka tirohia te mana o nga ipu ma te whakahau:

docker ps

Whakatuwheratia te atanga whakahaere i to kaitirotiro localhost:8002.

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Kei te putua mo tenei wa na te mea he node hou. Kia huri tatou i tera. Kei te tautoko a IAM i te ariā o nga mokowāmahi mo te wehewehe i nga API ki nga waahanga me/ranei nga whakahau. Haere ki te mokowāmahi "taunoa" ka whakamahia mo a maatau whakamatautau.

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Ko te maha o nga tono mo tenei mokowāmahi he kore tonu, engari ka whai whakaaro koe mo nga kaupapa IAM taketake i te tahua kei te taha maui. Ko nga waahanga tuatahi e rua: Ko nga Ratonga me nga Ararere te mea nui:

  • Ko te Ratonga te API e hiahia ana matou ki te tuku uru ki nga kaihoko. Na, ko te REST API i InterSystems IRIS he Ratonga, penei, hei tauira, te API Google ki te hiahia koe ki te whakamahi.
  • Ka whakatauhia e te Arataki ko wai te Ratonga ka tukuna atu nga tono taumai. He whakaritenga motuhake o ia huarahi, a, ki te tutuki, ka tukuna te tono ki te Ratonga tika. Hei tauira, ka taea e te Ararere te taurite ki te IP, te rohe kaituku, nga tikanga HTTP, nga waahanga o te URI, te huinga ranei o enei tauira.

ratonga

Me hanga he Ratonga InterSystems IRIS, me nga uara e whai ake nei:

mara
uara
Whakaahuatanga

ingoa
iris
Ingoa Ratonga

ope
IP
InterSystems IRIS kaihautu tūmau ip ranei

tauranga
52773
Tauranga tukutuku tūmau InterSystems IRIS

ara
/api/atelier
Ara pakiaka

kawa
http
Tuhinga

Waiho nga toenga uara hei taunoa. Patohia te paatene Create ka tuhia te ID o te Ratonga i hanga.

Ara

Inaianei me hanga he ara:

mara
uara
Whakaahuatanga

ara
/api/atelier
Ara pakiaka

kawa
http
Tuhinga

ratonga.id
aratohu mai i te 3
Ratonga (TT mai i te taahiraa o mua)

Waiho nga toenga uara hei taunoa. Patohia te paatene Create ka tuhi i te ID o te Ara i hanga. Ma te taunoa, ka whakarongo a IAM mo nga tono taumai i runga i te tauranga 8000. Inaianei kua tukuna nga tono ki http://localhost:8000 ka timata ki /api/atelier ka tukuna ki InterSystems IRIS.

Te whakamātautau

Me ngana ki te hanga tono i roto i te kiritaki REST (Kei te whakamahi ahau Kai-pou).

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Tukuna he tono GET ki http://localhost:8000/api/atelier/ (kaua e wareware / i te mutunga) ka whiwhi whakautu mai i InterSystems IRIS. Ko ia tono ka haere ma IAM ka kohi ine:

  • Waehere mana HTTP.
  • Taihoa.
  • Aroturuki (mehemea kua whirihora).

I tukuna e au etahi atu tono (tae atu ki nga tono e rua ki nga waahi mutunga kore penei i te /api/atelier/est/), ka kitea tonu nga hua ki te papatohu:

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Te mahi me nga monomai

Inaianei kua whirihorahia he huarahi, ka taea e matou te whakahaere i to maatau API. Ka taea e taatau te taapiri i nga waahanga hei whakakii i ta maatau ratonga.

Ko te huarahi tino nui ki te whakarereke i te whanonga o te API ko te taapiri i tetahi mono. Ka wehe nga monomai i nga mahi takitahi, ka taea te hono atu ki te IAM ki te ao katoa, ki nga hinonga takitahi anake, penei i te Kaiwhakamahi (rōpū kaiwhakamahi), Ratonga, ara ranei. Ka timata ma te taapiri i te mono Whakaiti Reiti ki te Ara. Hei whakarite hononga i waenga i te mono me te ara, me whai tohu motuhake (ID) o te huarahi.

Te whakaiti i te maha o nga tono

Pāwhiritia Monomai i te tahua paetaha maui. Ka taea e koe te kite i nga monohiko kaha katoa i runga i tenei mata, engari i te mea he hou tenei tūmau IAM, kaore ano kia kaha te whakauru. Na haere ki te taahiraa e whai ake nei ma te paatene i te "Pono Hou".

Ko te mono e hiahiatia ana e matou kei roto i te waahanga "Whakahaere Whakatere" ka kiia ko te "Rate Limiting". Tīpakohia. He iti noa nga tautuhinga ka taea e koe te whakarite ki konei, engari e rua noa nga mara e whai whakaaro ana matou:

mara
uara
Whakaahuatanga

id_ara
ID
ID ara

config.meneti
5
Te maha o nga tono mo ia meneti

Heoi ano. Kua whirihorahia te mono me te hohe. Kia mahara ka taea e tatou te whiriwhiri i nga waahi rereke, penei i te meneti, te haora, te ra ranei. Ka taea te whakakotahi i nga tautuhinga (hei tauira, 1000 tono mo ia haora me te wa ano 100 tono mo ia meneti). I whiriwhiria e au nga meneti na te mea he ngawari ki te tirotiro i nga mahi a te mono.

Mena ka tukuna ano e koe te tono ano ki te Poutapeta, ka kite koe kua whakahokia mai te whakautu me etahi atu pane e 2:

  • XRateLimit-Tepe-meneti: 5
  • XRateLimit-E toe-meneti: 4

Ko te korero tenei ki te kiritaki ka taea e ia te mahi ki te 5 tono mo ia meneti ka taea e ia te tono kia 4 atu i roto i te waahi o naianei.

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Mena ka tukuna e koe taua tono ano, ka mutu ka pau te motunga e waatea ana ka whiwhi koe i te waehere mana HTTP o 429 me te tinana whakautu e whai ake nei:

Te whakauru i te Kaiwhakahaere API InterSystems (+ webinar)

Tatari mo te meneti ka taea ano e koe te tuku tono.

He tikanga ngawari tenei e taea ai e koe te:

  • Tiakina te pito o muri mai i nga ngaru uta.
  • Korero ki nga kaihoko e hia nga tono ka taea e ratou.
  • Whakanuia te API.

Ka taea e koe te whakarite i nga uara mo nga wa rerekee ka maeneene te hokohoko API mo etahi waa. Me kii ka whakaae koe kia 600 nga tono mo ia haora i runga i tetahi huarahi. I te toharite 10 nga tono mo ia meneti. Engari kaore he mea e aukati i te kaihoko ki te whakaoti i nga tono 600 katoa i te meneti tuatahi o te haora. Ko tenei pea ka hiahia koe. Ka hiahia pea koe ki te whakatutuki i te kawenga ake mo te haora. Ma te tautuhi i te uara mara config.minute Ko te uara o te 20 ka whakarite kia kaua e neke ake i te 20 nga tono mo ia meneti me te 600 tono mo ia haora. Ka taea e tenei mo nga koikoi iti i runga i te waahi kotahi meneti ka whakatauritea ki te rerenga tino toharite o nga tono 10 mo ia meneti, engari kaore e taea e nga kaiwhakamahi te whakamahi i te waahi haora mo te meneti kotahi. Inaianei me 30 meneti pea mo te whakamahi i a raatau tono katoa. Ka whiwhi nga kaihoko i etahi atu pane mo ia waahi wa kua tohua, hei tauira:

Pane HTTP
uara

X-RateLimit-Tepe-haora
600

X-RateLimit-E toe-haora
595

X-RateLimit-Tepe-meneti
20

X-RateLimit-E toe-meneti
16

Ae ra, he maha nga huarahi rereke hei whirihora i nga rohe uiui i runga i nga mea e hiahia ana koe ki te whakatutuki.

kitenga

Ka mutu ahau i konei, ki taku whakaaro he nui nga rauemi mo te tuhinga tuatahi mo te Kaiwhakahaere API InterSystems. I whakamahia e matou tetahi o neke atu i te 40 monomai. He maha atu nga mea whakamere ka taea e koe me IAM:

  • Tāpirihia he tikanga motuhēhēnga matua mō ō API katoa.
  • Tauinehia te kawenga ma te whakamahi i te taurite kawenga puta noa i nga Ratonga maha.
  • Taapirihia nga mahi hou me nga whakatikatika pepeha ki te hunga whakarongo whakamatautau i mua i te whakahou katoa.
  • Whakaratohia ki nga kaiwhakawhanake o roto, o waho hoki he tomokanga tukutuku whakatapua e tuhi ana i nga API katoa.
  • Ko nga tono keteroki ki te whakaiti i te wa whakautu me te whakaheke i te kawenga ki te tuara o te punaha.

tohutoro

Webinar

Ka tono matou ki a koe ki te webinar "Whakahaere API me te Whakahaere API InterSystems", ka tu i te Whiringa-a-rangi 21 i te 10:00 wa Moscow (GMT+3).
Ko te Kaiwhakahaere API InterSystems (IAM) he waahanga hou o te InterSystems IRIS Raraunga Raraunga e whakarato ana i te aroturuki, te whakahaere me te whakahaere i nga waka ki/mai i nga API tukutuku i roto i te hanganga IT. I te webinar ka whakaatuhia e matou nga kaha matua o te Whakahaere API InterSystems:

  • Nga taputapu aroturuki waka API.
  • Ko nga mana whakahaere waka API, tae atu ki te mana bandwidth, te whakaiti i te maha o nga waea API, te pupuri i nga rarangi o nga rarangi ingoa IP kua whakaaetia me te whakakorehia, me era atu.
  • Nga taputapu whirihoranga haumarutanga API.
  • Waahanga kaiwhakawhanake mo te whakaputa i nga tuhinga API tauwhitiwhiti.
  • He waahi kotahi mo te uru ki te API.

Ko te webinar te tikanga mo nga kaihoahoa, kaiwhakawhanake me nga kaiwhakahaere punaha.

Me rehita!

Source: will.com

Tāpiri i te kōrero