mikä on Hystrixin käyttämä Laipiokuvio?

yleensä laipiokuvion tavoitteena on välttää viat yhdessä järjestelmän osassa, jotta koko järjestelmä saataisiin alas. Termi tulee aluksista, joissa laiva on jaettu erillisiin vesitiiviisiin osastoihin, jotta yksirunkoinen repeämä ei täyttäisi koko Alusta; se täyttäisi vain yhden laipion.

Laipiokuvion toteutukset voivat saada monia muotoja riippuen siitä, millaisilta vioilta järjestelmää halutaan suojata. Käsittelen tässä vastauksessa vain sitä, millaisia vikoja Hystrix käsittelee.

luullakseni laipiokuvion teki suosituksi kirja Release It! kirjoittanut Michael T. Nygard.

mitä Hystrix ratkaisee

laipion toteutus Hystrixissä rajoittaa komponenttiin kohdistuvien samanaikaisten kutsujen määrää. Näin resurssien määrä (tyypillisesti kierteet), joka odottaa vastausta komponentti on rajoitettu.

oleta, että sinulla on pyyntöön perustuva, monisäikeinen sovellus (esimerkiksi tyypillinen web-sovellus), joka käyttää kolmea eri komponenttia, A, B ja C. Jos C-osan pyynnöt alkavat roikkua, lopulta kaikki pyyntöjen käsittelyketjut roikkuvat odottamassa vastausta C: ltä.tämä tekisi sovelluksesta täysin reagoimattoman. Jos pyyntöjä C: hen käsitellään hitaasti, meillä on samanlainen ongelma, jos kuorma on riittävän suuri.

Hystrixin toteutus laipiokuviosta rajoittaa jonkin komponentin samanaikaisten puheluiden määrää ja olisi tässä tapauksessa tallentanut sovelluksen. Oletetaan, että meillä on 30 pyynnön käsittely kierteet ja on raja 10 samanaikaisia puheluita C. Tämän jälkeen enintään 10 pyyntöjen käsittelykierrettä voi roikkua C: n kutsuessa, muut 20 lankaa voivat vielä käsitellä pyyntöjä ja käyttää komponentteja A ja B.

Hystrixin ”approaches

Hystrix” on kaksi eri lähestymistapaa laipioon, kierteen eristäminen ja semafore-eristäminen.

Kierteen eristäminen

standardimenetelmänä on luovuttaa kaikki komponenttia C koskevat pyynnöt erilliseen kierteityslokeroon, jossa on kiinteä kierteiden määrä ja ei (tai pieni) pyyntöjono.

Semaforieristys

toinen lähestymistapa on se, että kaikki soittajat hankkivat luvan (0 aikalisällä) ennen pyyntöjä C: lle. Jos lupaa ei saada semaforilta, puhelut C: hen eivät mene läpi.

erot

kierrepoolimenetelmän etuna on se, että C: lle välitetyt pyynnöt voidaan aikaistaa, mikä ei ole mahdollista semaforeja käytettäessä.

Vastaa

Sähköpostiosoitettasi ei julkaista.