paint-brush
Chiqap Mundopi Estrategias Resilientes nisqa Proyectos Fintech nisqapaqby@ymatigoosa
66,650 ñawinchasqakuna
66,650 ñawinchasqakuna

Chiqap Mundopi Estrategias Resilientes nisqa Proyectos Fintech nisqapaq

by Dmitrii Pakhomov8m2024/06/26
Read on Terminal Reader
Read this story w/o Javascript

Nishu unay; Ñawinchanapaq

Software kaqpi resiliencia nisqaqa huk ruwana allin llamk'ayta hinalla ruwayta atisqanmanta riman, mana suyasqa sasachakuykunapi utaq mana allin ruwaykunapipas.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Chiqap Mundopi Estrategias Resilientes nisqa Proyectos Fintech nisqapaq
Dmitrii Pakhomov HackerNoon profile picture
0-item

Software kaqpi resiliencia nisqaqa huk ruwana allin llamk'ayta hinalla ruwayta atisqanmanta riman, mana suyasqa sasachakuykunapi utaq mana allin ruwaykunapipas. Fintech proyectokunapiqa resilienciaqa aswan hatunmi, achka razonkunarayku. Ñawpaqtaqa, empresakuna kamachisqa kanku kamachiy kamachiykunata hunt’anankupaq chaymanta qullqi kamachiqkuna resiliencia operativa nisqamanta aswanta rimanku sistema ukhupi estabilidad nisqa kananpaq. Astawan, digital yanapakuykuna miraynin chaymanta kimsa kaq servicio quqkunapi hapipakuy Fintech negociokunata aswan hatun harkakuy manchachikuykunaman churan. Resiliencia yanapallantaq riesgokuna interrupción kaqmanta imaymana factorkunarayku ruwasqa kaqta pisiyachiyta kayhina ciber amenazas, pandemias utaq geopolíticas eventos kaqmanta, operaciones empresariales centrales kaqmanta chaymanta activos criticos kaqmanta waqaychay.

Resiliencia ruwanakunawan, huk huñu allin ruwanakuna chaymanta estrategiakuna ruwasqa software sasachakuykunata aguantayta atinanpaq chaymanta ruwayninkunata waqaychaypaq ruwasqa hamut'ayku. Kay patrónkuna llikakuna hina ruwanku, mecanismokuna pantaykunata qhawanapaq, carga kamachiypaq, chaymanta pantasqakunamanta kutichiypaq qun, chaywan ruwanakuna mana allin condicionkunapi sinchi chaymanta confiable kanankupaq qhawanku.


Aswan riqsisqa resiliencia estrategiakunam kanku mamparo, caché, fallback, retry, chaymanta circuito interruptor. Kay qillqasqapiqa aswan sut’ita rimasaq, sasachakuykunata allichaypi yanapakusqankumanta ejemplokunawan.

Mamparo


Qawasunchik kay hawapi churasqanchikta. Huk ancha ordinario ruwanayuq kayku achka backends kaqwan qhipaykupi wakin willayta jap'inaykupaq. Kay qhipa tukukuykunaman tinkisqa achka HTTP rantiqkuna kanku. ¡Qhawakunmi llapanku huk piscina de conexión nisqallata rakinakusqanku! Hinallataq huk yanapakuykunapas CPU hinallataq RAM hina.


¿Imataq kanqa, Sichus huknin qhipa kaq imahina sasachakuykunata tarin chaymanta hatun mañakuy latencia kaqpi tukun? Hatun kutichiy pacharayku, tukuy tinkinakuy qucha hunt'asqata hap'isqa kanqa mañakuykunawan kutichiykunata suyaspa backend1 kaqmanta. Chayhina, mañakuykuna qhali backend2 kaqpaq chaymanta backend3 kaqpaq ruwasqa mana puriyta atinqachu imaraykuchus qucha tukusqa kachkan. Kayqa niyta munan huk pantay huk qhipa kaqniykupi huk pantayta tukuy ruwanapi ruwayta atin. Aswan allinqa, mana atikuq qhipa kaqwan tinkisqa ruwanakunalla waqlliyta tariyta munayku, puchuq ruwana normalta llamk'achkaptin.


¿Imataq Patrón de Mamparo nisqa?


Chay simiqa, Bulkhead pattern, buque ruwaymanta hamun, huk buque ukhupi askha sapanchasqa compartimientokunata ruwaymi. Huk compartimientopi fuga kaqtinqa unuwanmi hunt’aykukun, ichaqa wakin compartimientokunan mana afectasqachu qhepan. Kay sapanchasqa kayqa hark’anmi llapan buqueta chinkananpaq huk p’akikusqanrayku.

¿Imaynatataq Patrón de Mamparo nisqawan kay Sasachakuy allichayta atichwan?



Bulkhead patrón llamk'achiy atikunman imaymana laya yanapakuykunata huk ruwana ukhupi sapanchaypaq, huk chiqanpi pantay llapa sistemata afectanmanta hark'aspa. Kaypim imaynatam sasachakuyninchikman churachwan:


  1. T'inkisqa quchakunata sapaqchay Sapa qhipa kaqpaq sapaq tinkinakuy quchakunata ruwayta atiykuman (backend1, backend2, backend3). Kayqa qhawan sichus backend1 hatun kutichiy pachakunata utaq pantaykunata tarichkan, tinkiynin qucha sapallan tukukunqa, backend2 kaqpaq chaymanta backend3 kaqpaq tinkinakuy quchakunata mana afectasqa saqispa. Kay sapanchasqa kayqa qhali qhipa kaqkunaman mañakuykunata normalta ruwayta qatichiyta saqin.
  2. Qhipa ruwanakunapaq yanapakuykunata limitay Bulkheads kaqwan llamk'achispa, qhipa ruwanakunapaq sapanchasqa yanapakuykunata rakiyta atiykuman, ahinataq huñu ruway utaq programasqa ruwanakuna. Kaymi harkan kay ruwaykuna chiqap pacha llamkaykunapaq necesitasqanku recursokunata mikunankupaq. Ejemplopaq, hayk'a q'ipikuna utaq CPU llamk'achiyta qhipa ruwanakunaman qusqa hark'ayta atiykuman, suficiente recursokuna yaykuq mañakuykunata llamk'achinapaq qhipakusqankuta qhawaspa.
  3. Yaykusqa mañakuykunamanta hark'akuykunata churay Mamparokuna ruwayta atikunmantaq mayk'a yaykuq mañakuykunata ruwanamanta wak kitikunaman limitanapaq. Ejemplopaq, huk hatun límiteta churayta atiykuman mayk'a mañakuykunachus sapa pata serviciopaq kuskalla ruwasqa kanman. Kayqa harkan mayqin sapalla qhipa kaqpas llamkanamanta llalliyta chaymanta huk qhipa qhipakuna llamk'ayta atisqankuta qhawan huk llasa q'ipi kaptinpas.

Сache


Yuyaykusun qhipa sistemayku pisi probabilidadniyuq kanku sapan pantaykunawan tupanankupaq. Ichaqa, mayk'aq huk llamk'ayqa llapa kay qhipa kaqninkunata paralelo kaqpi tapuyta ruwan, sapa huk sapalla pantayta kutichiyta atin. Kay pantaykuna sapanmanta ruwakusqankurayku, ruwanaykupi pantaypa tukuynin probabilidadninqa aswan hatunmi mayqin sapalla qhipa kaqpa pantay probabilidadninmanta. Chay huñusqa pantay probabilidad nisqataqa yupayta atikunmanmi P_total=1−(1−p)^n nisqa fórmula nisqawan, maypichus n nisqa qhipa sistemakunap yupayninmi.


Ejemplopaq, sichus chunka backends nisqayuq kanchik, sapakama pantay probabilidad p=0,001 (99.9% SLA nisqawan tupan), chaymanta pantay probabilidad nisqa:


P_tukuy = 1− (1−0,001) ^ 10 = 0,009955


Kayqa niyta munan huñusqa SLAyku yaqa 99% kaqman urmaykun, imayna tukuy atiyniyuq kay pisiyasqanmanta rikuchispa mayk'aq achka qhipa ruwanakuna paralelo kaqpi tapuchkanki. Kay sasachakuy pisiyachinapaq, huk yuyarina ukhupi waqaychasqa ruwayta atiykuman.

Imaynatataq chayta allichayta atisunman in-memory caché nisqawan


Huk yuyarina ukhupi waqaychasqa huk hatun utqaylla willay waqaychana hina llamk'an, sapa kuti yaykuy willayta waqaychan chaymanta sapa kuti atikuq llasaq pukyuta apamuy necesidadta chinkachin. Yuyaypi waqaychasqa waqaychasqakuna 0% pantay chansayuq kasqankurayku llikapi willayta apamuywan tupachisqa, ruwanaykupa atiyniyuq kayninta anchata yapanku. Astawan, waqaychayqa llika puriyta pisiyachin, pantay atiyta aswan pisiyachin. Chayhina, huk yuyarina ukhupi waqaychasqa llamk'achispa, aswan pisi pantay tasa ruwanaykupi aypayta atiykuman qhipa sistemaykuwan tupachisqa. Chaymanta, yuyarina ukhupi waqaychasqakuna aswan utqaylla willayta kutichiyta qunku llikapi ruwasqa apamuymanta, chaywan ruwana latenciata pisiyachin —huk reparanapaq ventaja.

Yuyarina ukhupi waqaychasqa: Sapanchasqa waqaychasqakuna

Sapanchasqa willaykunapaq, ahinataq ruwaqpa perfiles utaq yuyaychaykuna, yuyarina ukhupi waqaychasqakuna llamk'achiypas ancha allin kanman. Ichaqa llapa mañakuykuna huk ruwaqmanta sapa kuti kikin ruwana instanciaman rinankuta qhawanayku tiyan paykunapaq waqaychasqa willayta llamk'achinapaq, mayqinchus k'askanasqa sesiones mañan. Sesiones k'aspikuna ruwayqa sasa kanman, ichaqa kay escenario kaqpaq, mana mecanismos complejos kaqta necesitaykuchu. Huch'uy t'ikrayta wakmanta equilibrio ruwayqa chaskisqa, chayrayku huk takyasqa carga equilibrio algoritmo hina sapa kuti hashing suficiente kanqa.


Imataq aswan, huk nodo pantasqa kaqtin, sapa kuti hashing kaqmanta qhawan chaymanta mana atisqa nodowan tinkisqa ruwaqkunalla wakmanta equilibrio ruwayta ruwanku, sistemapi sasachakuykunata pisiyachispa. Kay ruwayqa sapanchasqa cachés kamachiyta pisiyachin chaymanta tukuypaq takyasqa kayninta chaymanta ruwayninta ruwanaykumanta aswan allinchan.

Yuyarinapi waqaychasqa: kitipi willaykunata mirachiy



Sichus willayta waqaychayta munasqayku ancha chaniyuq chaymanta sapa mañakuypi llamk'achisqa sistemaykupi llamk'achkan, kayhina yaykuy kamachiykuna, suscripción plankuna utaq wak ancha chaniyuq entidadkuna dominioykupi—kay willaypa puquynin huk hatun pantay punto sistemaykupi ruwayta atinman. Kay sasachakuy allichanapaq, huk ruwayqa kay willayta chiqamanta ruwanaykupa yuyariyninman hunt'asqata kutichiymi.


Kay escenario kaqpi, sichus pukyuta willaypa volúmennin kamachiy atikun, ruwayta qallariyta atiykuman kay willaypa huk instantánea uraykachispa ruwanayku qallariypi. Qhipaman, musuqyachiy ruwaykunata chaskiyta atiykuman waqaychasqa willay pukyuwan tinkisqa qhipakusqanmanta qhawanapaq. Kay ruwayta hap'ispa, kay ancha chaniyuq willaykunaman yaykuypaq atiyniyuq kayta kallpachayku, sapa kutichiyqa chiqalla yuyarinamanta 0% pantay atiywan ruwakun. Chaymanta, willayta yuyarinamanta kutichiyqa excepcionalmente utqaylla, chaywan ruwanaykupa ruwayninta allinchaypaq. Kay estrategia allinta pisiyachin riesgota hawa willay pukyupi hapipakuywan tinkisqa, sapa kuti chaymanta atikuq yaykuyta ancha chaniyuq willaykunaman ruwanaykupa llamk'ayninpaq qhawaspa.

Recargakuq config

Ichaqa, ruwana qallariypi willayta uraykachinapaq necesidad, chaywan qallariy ruwayta tardaspa, huknin ‘12-factor ruwana’ kamachiyta sarunchakun, usqhaylla ruwana qallariymanta rimaq. Ichaqa, mana caching llamk'achiyta allinninkunata chinkachiyta munaykuchu. Kay sasachakuy allichanapaq, maskasun imakuna allichay atikusqanmanta.


Utqaylla qallariyqa ancha chaniyuq, aswanta Kubernetes hina plataformakunapaq, mayqinkunachus utqaylla ruwana astakuypi hukniray físico nodos kaqman hapipakunku. Ancha kusisqa, Kubernetes pisilla qallariy ruwanakuna kamachiyta atin qallariy sondakuna hina ruwanakunata llamk'achispa.


Huk sasachakuywan tupasunman, ruwana purichkaptin ruwanakunata musuqyachiy. Sapa kuti, waqaychasqa pachakunata utaq mañakuy pacha tukukuykunata allichayqa ruruchina sasachakuykunata allichanapaqmi. Usqhaylla musuqchasqa ruwanakuna willañiqikunata ruwanaykuman mast'ariyta atiykuman chaypas, kay tikraykunata churayqa sapa kuti huk musuqmanta qallariyta munan. Sapa ruwanapa mast'arisqa qallariy pachanwan, huk rollo kaqmanta qallariyqa anchata tardanman allichaykunata mast'ariyta ruwaqniykuman.


Kayta atipanapaq, huk allichayqa ruwanakunata huk kuskalla tikraqpi waqaychaymi chaymanta huk qhipa q'ipi sapa kuti musuqyachiy. Ichaqa, wakin parámetros, HTTP mañakuy pacha tukukuy hina, HTTP utaq willaypa tiyapuynin rantiqkunata wakmanta qallariyta munanman mayk'aq tupaq ruwana tikrakun, huk sasachakuy atiyta churaspa. Chaywanpas, wakin rantiqkuna, Java kaqpaq Cassandra purichiq hina, ruwanakuna kikillanmanta wakmanta kargayta yanapanku, kay ruwayta pisiyachispa.


Wakmanta karganapaq ruwanakuna ruwayqa unay ruwana qallariy pachakunap mana allin ruwayninta pisiyachiyta atin chaymanta yapa yanapakuykunata quyta atin, ahinataq ruwanakuna bandera ruwaykunata yanapay. Kay ruwayqa atichiwayku ruwana atiyniyuq kayta chaymanta kutichiyta waqaychayta chaymanta allinta ruwana musuqyachiykunata kamachiy.

Fallback nisqa

Kunanqa huk sasachakuymanta qhawarisunchik: sistemaykupi, mayk'aq huk ruwaqpa mañakuynin chaskisqa chaymanta ruwasqa huk tapuyta huk qhipa kaqman utaq willaypa tiyapuyninman kachaspa, wakin kuti, huk pantay kutichiy chaskisqa suyasqa willaypa rantinpi. Chaymanta, sistemayku huk 'pantasqa' kaqwan ruwaqman kutichin.


Ichaqa, achka escenariokunapi, aswan allin kanman pisi mawk'a willayta rikuchiy huk willakuywan kuska willay musuqyachiy tardakuy kasqanmanta willaq, aswan hatun puka pantay willakuywan ruwaqta saqispa.



Kay sasachakuy allichanapaq chaymanta sistemaykupa ruwayninta allinchaypaq, Fallback ruwayta ruwayta atiykuman. Kay patrón qhipanpi yuyayqa iskay kaq willay pukyuyuq kayniyuq, mayqinchus aswan pisi calidad utaq musuq willayniyuq kanman ñawpaq pukyuwan tupachisqa. Sichus ñawpaq willay pukyuta mana kanchu utaq pantayta kutichin, llamkana kay iskay ñiqin pukyuta willayta kutichiyman urmayta atin, wakin laya willayta ruwaqman rikuchisqa kaqta qhawaspa, pantay willayta qhawachinamantaqa.

Wakmanta kallpachakuy


Sichus hawapi siq'ita qhawanki, kunan tupasqayku sasachakuywan chaymanta caché ejemplowan tupasqaykuwan rikch'akuyninta reparanki.


Chayta allichanapaqqa, huk patrón nisqa ruwayta yuyaykusunman, chaytan reqsikun retry nisqa sutiwan. Waqaychasqakunapi hapipakunamantaqa, llamkanaqa pantay kaptinqa kikillanmanta mañakuyta musuqmanta apachinanpaqmi ruwasqa kanman. Kay wakmanta kallpachakuy ruwayqa aswan sasan alternativata qun chaymanta allinta pisiyachinman pantay atiyta ruwanaykupi. Mana waqaychasqa hinachu, mayqinchus sapa kuti sasachakuy waqaychasqa mana allin ruway mecanismokunata munan willay tikraykunata llamk'achinapaq, mana atisqa mañakuykunata wakmanta ruwayqa aswan chiqan ruwanapaq. Imaynachus caché mana allin ruwayqa huk aswan sasachakuy ruwanakuna hina software ingeniería kaqpi qhawasqa, huk musuqmanta kallpachakuy estrategia hap'iyqa pantay ruwayta allinchayta atin chaymanta sistema resilienciata allinchayta atin.

Interruptor de circuito nisqa


Ichaqa, huk estrategia de reintento nisqa mana consecuencias potenciales nisqakunata qhawarispa adoptayqa aswan complicaciones nisqamanmi apayta atin.


Imaginasun huknin backendsniyku huk pantayta tarin. Chayhina escenario kaqpi, mana atikuq qhipa kaqman wakmanta kallpachakuykunata qallariyqa huk hatun yapakuy volúmen de tráfico kaqpi tukunman. Kay qunqayllamanta t'ikrayqa qhipa kaqpi atipanman, pantayta aswanta yapanman chaymanta huk cascada efectota tukuy sistemapi ruwayta atinman.


Kay sasachakuywan atipanapaq, ancha allinmi hukmanta prueba ruway ruwayta interruptorpa ruwayninwan hunt'achiy. Interruptorqa huk mecanismo de salvaguardia hina llamkan, chaymi qawan serviciokuna uraypi pantaypa tasanta. Mayk'aq pantay taripa huk ñawpaqmanta riqsisqa umbral kaqmanta pasaptin, interruptor huk kamachisqa pachapaq mañakuykunata afectasqa servicioman interrumpin. Kay pachakunapi, sistemaqa mana yapasqa mañakuykunata apachiyta munanchu, mana allin servicio pachata kutichiyta saqinanpaq. Chay intervalo designado nisqamanta qhipaman, interruptor cuidadosamente saqillan huk yupay mañakuykunata pasananpaq, chiqaqchaspa sichus servicio estabilizasqa. Sichus servicio allinyasqa, normal tráfico pisi pisimanta kutichisqa; mana hina kaqtinqa, circuito kichasqa qhepan, mañakuykunata hark’aspallapuni servicio normal llank’ayta qallarinankama. Interruptorpa patrón kaqninta hukmanta prueba lógica kaqwan kuska tinkispa, pantay situacionkunata allinta kamachiyta atiyku chaymanta sistemapa sobrecarga kaqninta harkayta atiyku backend pantaykunapi.

Envoltura

Tukuchinapaq, kay resiliencia ruwaykunata ruwaspa, ruwanaykuta kallpachayta atiykuman emergencias kaqmanta, hatun tarikuyniyuq kayta waqaychayta atiykuman, chaymanta mana pantasqa experienciata ruwaqkunaman quykuman. Chaymantapas, telemetría huk yanapakuyraqmi kasqanmanta, chaytaqa manam qawarinachu, proyectopa resistencian quspaqa. Allin registrokuna chaymanta mitricakuna yanapakuypa allin kayninta anchata yapayta atinku chaymanta ruwayninkumanta chanin qhawaykunata quyta atinku, aswan allinchaypaq allin yachasqa tanteayta yanapaspa.