paint-brush
Chiqpach Uraqpachan Estrategias Resilientes ukax Proyectos Fintech ukatakiukata@ymatigoosa
66,646 ullart’awinaka
66,646 ullart’awinaka

Chiqpach Uraqpachan Estrategias Resilientes ukax Proyectos Fintech ukataki

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

Sinti jaya pachanakawa; Uñxatt’añataki

Software ukan resiliencia ukax mä aplicación ukan suma ukat atiniskañ irnaqañapataki, jan suyt’at jan walt’awinak jan ukax jan walt’awinak utjkipans.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Chiqpach Uraqpachan Estrategias Resilientes ukax Proyectos Fintech ukataki
Dmitrii Pakhomov HackerNoon profile picture
0-item

Software ukan resiliencia ukax mä aplicación ukan suma ukat atiniskañ irnaqañapatakix sañ muni, jan suyt’at jan walt’awinak jan ukax jan walt’awinak utjkipans. Fintech proyectos ukanx resiliencia ukax juk’amp wakiskiriwa kunatix walja razones ukanakaw utji. Nayraqatxa, empresanakaxa wakisiwa phuqañataki kamachinakaru ukhamaraki qullqituqita reguladores ukanakaxa jach’añchapxi resistencia operativa ukaru ukhamata sistema ukanxa estabilidad ukaxa utjañapataki. Ukhamarus, herramientas digitales ukan jilxatatapax ukhamarak kimsïr servicios ukanakar atinisiñax Fintech empresanakarux seguridad tuqit jach’a jan walt’awinakaruw uñt’ayi. Resiliencia ukax yanapt’arakiwa jan walt’awinak askichañataki kunatix kunayman tuqinakatw jan walt’awinakax utji, ciber amenazas, pandemias, jan ukax geopolíticas ukanakan jan walt’awinakapata, operaciones básicas de negocios ukat activos críticos ukanakar jark’aqañataki.

Patrones de resiliencia ukampixa, mä conjunto de mejores prácticas ukat estrategias ukanakaw amuyasi, ukax software ukax jan walt’awinak aguantañapataki ukhamarak lurawinakap jan chhaqhañapataki. Aka patrunanakax redes de seguridad ukham irnaqapxi, mecanismos ukanakaw utji pantjasiwinak apnaqañataki, carga apnaqañataki, ukhamarak jan walt’awinakat kutt’ayañataki, ukhamat aplicaciones ukanakax ch’aman qhiparañapataki ukhamarak jan wali condicionanakanx confiable ukhamañapataki.


Uka resiliencia estrategias ukanakax juk’amp uñt’atawa, mamparo, caché, fallback, retry ukat interruptor de circuito. Aka qillqatanxa, jupanakat juk’amp qhanañcht’añäni, kuna jan walt’äwinakas askichañ yanapt’aspa ukanak uñacht’ayasa.

Bulkhead ukax mä jach’a uñacht’äwiwa


Aka patat uñstki uka tuqit mä jukʼa uñakiptʼañäni. Jiwasax mä aplicación wali ordinario ukaniwa walja backends ukanakaw qhipäxan utji mä qawqha datos ukanakat apsuñataki. Uka qhipa uñtawinakarux walja HTTP clientes ukanakaw uñt’ayasi. ¡Taqinipuniw pachpa conexión pool ukankapxi sasaw amuyasi! Ukat ukhamaraki yaqha yänakax CPU ukat RAM ukanaka.


¿Kunas pasani, Mä backends ukax mä kasta jan walt’awinak jikxataspa ukat jach’a mayiwi latencia ukar puriyaspa? Jach’a jaysaw pacha utjatapatxa, taqpach conexión pool ukax taqpach phuqhantatäniwa, backend1 ukan jaysäwinak suyt’ir mayiwinakampi. Ukhamatwa, k’umara backend2 ukat backend3 ukanak amtatäki uka mayiwinakax janiw nayrar sartañjamäkaniti kunatix piscinax tukusxiwa. Ukax sañ muniw mä jan walt’awix jiwasan qhipa uñtawisanx mä jan walt’awiw taqpach aplicación ukanx utjaspa. Wali askiw, jiwasax munapxta funcionalidad ukakiw jan walt’ayat backend ukamp chikt’atax degradación ukar puriñapataki, ukatx mayni aplicación ukax normalmente irnaqaskakiwa.


¿Kunas Patrón de Mamparo ukaxa?


Uka aruxa, Bulkhead pattern, barco lurañata juti, ukaxa mä barco ukanxa walja compartimientos aislados ukanaka lurañawa. Mä compartimienton fugajj utjaspa ukhajja, umampiw phoqantatäjje, ukampis mayni compartimientonakajj janiw kuna jan waltʼäwis utjkiti. Aka saparst’awix taqpach barcox mä p’akjatapat jan chhaqhañapatakiw jark’i.

¿Kunjamsa uka jan waltʼäw askichañatakejj patrón de mamparo apnaqsna?



Patrón Bulkhead ukax mä aplicación ukan kunayman yänak yaqhawjar jaqukipañatakiw apnaqasispa, mä chiqan jan walt’awix taqpach sistema ukar jan walt’ayañapatakiw jark’aqaspa. Akax kunjamsa jan waltʼäwisarux apnaqsna:


  1. Conexión Pools ukanakat yaqhawjar jaqukipaña Sapa backend (backend1, backend2, backend3) ukanakatakix sapa mayni conexión pools ukanakaw lurasispa. Ukax backend1 ukax jach’a jaysaw pachanak jan ukax jan walt’awinak utjki ukhax, conexión pool ukax independientemente tukusiñapatakiw uñji, ukatx backend2 ukat backend3 ukatakix conexión pools ukax jan afectata jaytatawa. Aka saparst’awix k’umara backends ukanakarux normalmente mayiwinak luraskakiñapatakiw jayti.
  2. Nayra lurawinakataki yänaka jisk’achaña Bulkheads apnaqañampixa, qhipa lurawinakatakixa kunaymana yänaka churaraksnawa, kunjamatixa lote luraña jan ukaxa wakichata lurawinaka. Ukhamatwa uka lurawinakax chiqpach pachan irnaqañatakix wakiskir yänak manq’añ jark’i. Amuyt’añataki, jiwasax jark’aqaraksnawa kunatix threads jan ukax CPU apnaqawix qhipa lurawinakar uñt’ayatawa, ukhamat walja yänakax qhiparañapatakix mantanir mayiwinakar apnaqañataki.
  3. Ukhamaraki, mantaniri mayiwinakaru jark’awinaka utt’ayaña Mamparanakaxa apnaqatarakiwa, ukhamata kunaymana chiqanakaru mantañataki mayiwinakaru jisk’achañataki. Amuyt’añataki, sapa servicio ascendente ukatakix mä límite máximo ukaw utt’ayasispa, kuna mayiwinakas mä pachan lurasispa. Ukax jark’iwa kuna sapa backend ukax sistema ukar ch’amanchañapataki ukat yaqha backends ukanakax irnaqaskakiñapatakiw maynix jach’a carga ukankchi ukhas.

Сache ukax wali ch’amawa


Jiwasan sistemas de backend ukax mä jisk’a probabilidad ukaniwa pantjasiwinak sapa maynimp jikisiñataki. Ukampirus, kunapachatix mä lurawix taqi uka qhipa uñtatanakar paralelo ukan jiskt’añax utjki ukhax sapa mayniw independientemente mä pantjasiw kutt’ayaspa. Kunatix aka pantjasiwinakax sapa mayniw uñstapxi, taqpach probabilidad ukax mä pantjasiw jiwasan aplicación ukanx juk’amp jach’awa pantjasiw probabilidad ukax kuna sapa backend ukat sipansa. Probabilidad de error acumulativo ukaxa fórmula P_total=1−(1−p)^n ukampiwa jakhthapita, kawkhantixa n ukaxa sistemas de backend uka jakhthapitawa.


Amuyt’añataki, tunka qhipa uñtatanakanixa, sapa maynixa pantjasiwi probabilidad p=0,001 (corresponente a un SLA de 99,9%), ukatxa apsutaxa pantjasiwi probabilidad ukaxa akanakawa:


P_total=1−(1−0,001)^10=0,009955 uka tuqita


Ukax sañ muniw jiwasan mayacht’at SLA ukax niya 99% ukjaruw jilxati, uñacht’ayiw kunjams taqpach confianzax jisk’achasi kunawsatix walja backends ukar paralelo ukan jiskt’atäki ukhaxa. Uka jan walt’äw askichañatakix mä caché in-memory ukar phuqhacharaksnawa.

Kunjamas in-memory caché ukampiw askichsna


Mä caché in-memory ukax mä jach’a velocidad de datos buffer ukhamaw irnaqäna, sapa kuti mantat datos ukar imañataki ukatx sapa kutiw jan juk’amp llamp’u chuyman fuentenakat apsuñax wakiskiti. Kunjamakitix cachés ukanakax memoria ukan imatäki ukanakax 0% pantjasiwinakaniwa, red ukan yatiyawinak apsuñamp chika, ukax jiwasan aplicación ukan confiabilidad ukarux wali jach’anchatawa. Ukhamarus, caching ukax red ukan trafico ukarux jisk’acharaki, ukax juk’ampiw pantjasiwinak utjañapatak jisk’acharaki. Ukhamatwa, mä caché memoria ukan apnaqasa, jiwasan aplicación ukanx juk’amp jisk’a tasa de error ukar puriraksnawa, sistemas de backend ukar uñtasita. Ukhamarus, cachés de memoria ukanakax juk’amp jank’akiw datos apsuñ uñacht’ayi, red ukan apsutanakat sipansa, ukhamat aplicación ukan latencia ukar jisk’achañataki —mä jach’a ventaja.

Caché de memoria: Caché personalizado ukaxa mä juk’a pachanakwa lurasi

Datos personalizados ukatakixa, perfiles de usuarios jan ukaxa iwxt’awinaka, cachés en memoria apnaqañaxa wali askiwa. Ukampis mä apnaqirit taqi mayiwinakax sapa kutiw pachpa instancia de aplicación ukar sarañapatak uñjañasa, jupanakatakix datos caché ukar apnaqañataki, ukax sesiones pegajosas ukaruw munaraki. Sesiones pegajosas ukanakar phuqhañax ch’amäspawa, ukampis aka escenario ukatakix janiw mecanismos complejos ukanakax munaskiti. Jisk’a reequilibrio de tráfico ukax wali askiwa, ukhamax mä algoritmo de equilibrio de carga estable ukhamarak hashing constante ukax suficiente ukhamawa.


Kunas kunasa, mä nodo jan walt’awi utjkipanxa, hashing constante ukax nodo jan walt’ayat ukamp chikt’at apnaqirinakakiw reequilibrio ukar puriñapatak uñji, sistema ukar jan walt’awinak jisk’achañataki. Aka amtawix cachés personalizados ukanakan apnaqawiparux ch’amancharaki ukatx taqpach estabilidad ukat rendimiento jiwasan aplicación ukarux ch’amancharaki.

Caché de memoria: local ukan yatiyawinakap uñt’ayaña



Uka datos ukanakax caché ukar uñt’ayañ amtapktan ukax wali wakiskiriwa ukat sapa mayiwinak sistema ukan apnaqatapanx apnaqatarakiwa, kunjamakitix políticas de acceso, planes de suscripción, jan ukax yaqha entidades vitales ukanakax jiwasan dominio ukan utjki ukanakax —aka datos ukan phunchhawipax mä jach’a punto de fallo jiwasan sistema ukanx utjaspawa. Uka jan walt’awi askichañatakixa, mä amtawix aka yatiyawinak taqpach uñakipañawa chiqak jiwasan aplicación ukan amuyupar.


Aka escenario ukanxa, volúmenes de datos ukaxa fuente ukanxa apnaqatarakiwa, ukaxa qalltaspawa mä instantánea uka datos uka apsuñataki jiwasana aplicación qalltawinxa. Qhipharux, machaq lurawinak katuqaraksnawa, ukhamat caché ukan yatiyawinakap phuqhat ukamp sincronizado ukhamañapataki. Aka lurawi apnaqasa, aka wakiskir yatiyawiru mantañatakixa chiqapawa, kunatixa sapa apsuñaxa chiqapa amuyu tuqita 0% pantjasiwi probabilidad ukampiwa lurasi. Ukhamaraki, memoria ukan datos apsuñax excepcionalmente rápido ukhamawa, ukhamat jiwasan aplicación ukan lurawipax juk’amp sumaptayi. Aka estrategia ukaxa wali sumawa jisk’acharaki kunatixa utjkixa mä anqäxa yatiyawi phuqhawiru atinisiñampi, ukhamata mä chiqapa ukhamaraki chiqaparu mantañataki wali wakiskiri yatiyawinakaru jiwasana apnaqawisan apnaqañataki.

Configuración ukax mayamp cargañjamawa

Ukampirus, aplicación qalltawinx datos ukanakax apkatañax wakisi, ukhamat qalltañ lurawix qhiphart’ayasi, ukax mä principio ‘aplicación 12 factores’ ukaruw jan walt’ayi, ukax jank’akiw aplicación qalltañatak arxati. Ukampis, janiw caché apnaqañan askinakap apt’asiñ munktanti. Aka dilema ukar askichañatakix, kuna askichäwinakas utjaspa uk yatxatañäni.


Jank’ak qalltañax wali wakiskiriwa, juk’ampirus Kubernetes ukham plataformanakatakix, ukax kunayman nodos físicos ukar jank’ak aplicación migración ukar atinisiñapawa. Wali askiwa, Kubernetes ukax k’achat k’achat qalltañ aplicacionanak apnaqaspawa, qalltañ sondas ukham lurawinakampi.


Yaqha jan walt’awix utjaspawa, configuración ukanakax machaqar tukuyañawa, kunawsatix aplicación ukax apnaqaski ukhaxa. Jilapachax caché pachanak mayjt’ayañax jan ukax mayiwinak pachanak mayjt’ayañax wakisiwa, lurañ jan walt’awinak askichañataki. Jiwasax jank’akiw machaq configuración archivonakax jiwasan aplicación ukar uñstayañax wakischispa, uka mayjt’awinak apnaqañatakix jilpachax mä wasitat qalltañaw wakisi. Sapa aplicación ukan jach’a qalltañ pachapampixa, mä rolling restart ukax jiwasan apnaqirinakasar askichäwinak uñstayañax wali qhiphart’ayaspawa.


Uk askichañatakix mä solución ukax configuraciones ukanakax mä variable concurrente ukan imañawa ukatx mä rosca de fondo ukax sapa kutiw machaqar tukuyañapa. Ukampirus yaqhip parámetros, kunjamatix HTTP mayiwix pacha tukuyañax wakisispawa, HTTP jan ukax base de datos clientes ukanakar wasitat qalltañaw wakisispa, kunawsatix configuración correspondiente ukax mayjt’ki ukhaxa, ukax mä jan walt’äwiw utjaspa. Ukampirus yaqhip clientes, Java ukatakix Cassandra conductor ukar uñtasita, configuración automática recarga ukar yanapt’i, ukax aka lurawix simplifica.


Configuraciones recargables ukanaka phuqhañaxa, jaya pachanakata aplikasiyun qalltaña pachanakan jan wali lurawinakaparu jisk’achañataki ukhamaraki yaqha askinaka churañataki, kunjamatixa bandera de características ukanaka phuqhaña yanapt’aña. Aka amtawix aplicación confiabilidad ukat respuesta ukanak uñjañ yanapt’istu, ukampirus configuración actualizaciones ukanak sum apnaqañ yanapt’istu.

Ukax mä juk’a pachanakanwa

Jichhax yaqha jan walt’äw uñakipt’añäni: jiwasan sistemasanx kunapachatix mä apnaqir mayiwix katuqatäki ukatx mä jiskt’äw mä backend jan ukax base de datos ukar apayasaw lurasi, awisax mä pantjasiw jaysäwiw suyt’at yatiyawinakat sipanx katuqasi. Qhipharux jiwasan sistema ukax mä ‘pantjasiwimpiw’ apnaqirirux jaysawayxi.


Ukampirus walja uñacht’awinakanx mä juk’a nayra yatiyawinak uñacht’ayañax juk’amp askïspawa, mä yatiyawimp chika, ukax mä yatiyaw machaqar tukuyañ qhipharäwi utjatapat uñacht’ayaña, jan ukax apnaqirirux mä jach’a wila pantjasiw yatiyaw jaytañat sipansa.



Aka jan walt’awi askichañataki ukhamaraki sistema ukan sarnaqawip askichañatakixa, Fallback uka patrón phuqhacharaksnawa. Aka patrón qhipäxan amuyunakapax mä secundario datos fuente ukaniñawa, ukax inas juk’amp jisk’a calidad jan ukax frescura datos ukanakax nayrïr fuente ukar uñtasitx utjchispa. Nayraqata yatiyawi phuqhawixa jani utjkchi jani ukaxa pantjawi kutt’ayatächi ukhaxa, sistema ukaxa aka payïri phuqhata yatiyawi apsuñatakixa kutt’ayaspawa, ukhamata mä pantjawi yatiyawi uñacht’ayañat sipansa mä juk’a yatiyawi apnaqiriru uñacht’ayañataki.

Wasitat yantʼañamawa


Aka pata jamuq uñakipt’asax, jichhax kuna jan walt’äwis utjistu ukat caché uñacht’äwimp jikisktan uka jan walt’äwimp chikachasiñaw uñjasi.


Uk askichañatakix mä patrón ukar phuqhañ amtassna, ukax retry ukham uñt’atawa. Cachés ukar atinisiñat sipansa, sistema ukax lurasispawa, ukhamat pantjasiwix utjki ukhax mayiwix automáticamente wasitat apayaniñapataki. Aka wasitat yant’awix mä sanu alternativa uñacht’ayi ukatx wali askiwa jiwasan aplicación ukan pantjasiwinak jisk’achaspa. Janiw caché ukar uñtaskiti, ukax walja kutiw mecanismos complejos de invalidación de caché ukanak munapxi, datos mayjt’awinak apnaqañataki, jan walt’ayat mayiwinakar wasitat yant’añax mä juk’a chiqaw phuqhañataki. Kunjamakitix caché invalidación ukax ingeniería de software ukanx mä jach’a ch’amäkaspas ukhamaw uñjasi, mä estrategia de retento ukar apnaqañax pantjasiwinak apnaqañax agilizar ukhamarak sistema resiliencia ukar askinchaspa.

Interruptor de circuito ukax mä juk’a pachanakanwa


Ukampirus, mä estrategia de reintento ukar jan amuyt’asax kuna jan walt’awinakas utjaspa uk amuyt’asax juk’amp jan walt’awinakaruw puriyaspa.


Jiwasan backends ukanakat maynix mä jan walt’äwin uñjasispa sasin amuyt’añäni. Ukham escenario ukanx, jan walt’ayat backend ukar wasitat yant’äwinak qalltañax mä jach’a jilxatäwiw volúmenes de tráfico ukar puriyaspa. Aka akatjamat trafico ukan jilxatatapax backend ukarux ch’amanchaspawa, ukax jan walt’awiruw juk’amp ch’amanchaspa ukatx sistema ukanx mä efecto cascada ukar puriyaspawa.


Aka jan walt’awiru saykatañatakixa, wali askiw patrón de retento ukax patrón de interruptor ukamp phuqt’ayaña. Interruptor ukaxa mä mecanismo de salvaguardia ukhamawa, ukaxa uñjiwa tasa de error de servicios aguas abajo. Kunawsatix tasa de error ukax umbral predefinido ukar jilt’ki ukhax interruptor de circuito ukax servicio afectado ukar mayiwinak mä qhawqha pachatakiw jark’aqi. Aka pachanxa, sistema ukaxa janiwa yaqha mayiwinakxa apayankiti, ukhamata jani walt’ayata pachana servicio ukaxa kutt’ayañataki. Uka intervalo designado ukxaruxa, interruptor ukaxa wali amuyumpiwa mä qawqha mayiwinakaru pasañapatakixa jayti, ukaxa chiqapawa servicio ukaxa estabilizatäpachati janicha. Servicio ukaxa kutt’ayatäxi ukhaxa, normal tráfico ukaxa juk’ata juk’ata kutt’ayataraki; jan ukhamäkanixa, circuito ukax jist’aratawa, mayiwinakarux jark’aqaskakiniwa, servicio ukax normal operación ukar kutt’añkama. Patrón de interruptor de circuito ukampi mayachasaxa, lógica de reintento ukampi chika, jiwasaxa suma apnaqaraksnawa pantjasiwi situaciones ukatxa jark’aqaraksnawa sistema sobrecarga ukaxa backend ukan jan walt’awinakapata.

Ukax mä juk’a pachanakanwa

Tukuyañatakix, uka resiliencia uñacht’awinak phuqhasax, jiwasan aplicacionanakas ch’amancharaksnawa jan walt’awinakar saykatañataki, jach’a uñstawip uñjasa, ukatx mä jan ch’axwañ experiencia apnaqirinakar puriyañataki. Ukhamarus, nayax qhanancht’añ muntwa, telemetría ukax yaqha herramienta ukhamawa, ukax janiw uñjatäñapäkiti kunawsatix proyecto resiliencia uñacht’ayaski ukhaxa. Suma registros ukat métricas ukax wali jach’anchayaspawa servicios ukanakan calidad ukat mä aski amuyunakax lurawinakap uñacht’ayañataki, ukax yanapt’aspawa yatxatat amtawinak juk’amp askinak lurañataki.