paint-brush
ለፊንቴክ ፕሮጄክቶች የእውነተኛው ዓለም ተከላካይ ስልቶች@ymatigoosa
67,484 ንባቦች
67,484 ንባቦች

ለፊንቴክ ፕሮጄክቶች የእውነተኛው ዓለም ተከላካይ ስልቶች

Dmitrii Pakhomov
Dmitrii Pakhomov HackerNoon profile picture

Dmitrii Pakhomov

@ymatigoosa

10 yeas of experience of building mission critical Fintech system...

8 ደቂቃ read2024/06/26
Read on Terminal Reader
Read this story in a terminal
Print this story
Read this story w/o Javascript
Read this story w/o Javascript
tldt arrow
am-flagAM
ይህንን ታሪክ በአማርኛ ያንብቡ!
en-flagEN
Read this story in the original language, English!
ln-flagLN
Tanga lisolo oyo na lingala!
lo-flagLO
ອ່ານເລື່ອງນີ້ເປັນພາສາລາວ!
ps-flagPS
دا کیسه په پښتو ژبه ولولئ!
lt-flagLT
Skaitykite šią istoriją lietuvių kalba!
hr-flagHR
Pročitajte ovu priču na hrvatskom!
lv-flagLV
Izlasi šo stāstu latviešu valodā!
ht-flagHT
Li istwa sa a an kreyòl ayisyen!
hu-flagHU
Olvasd el ezt a történetet magyarul!
hy-flagHY
Կարդացեք այս պատմությունը հայերեն։
uk-flagUK
Читайте цю історію українською!
mg-flagMG
Vakio amin'ny teny malagasy ity tantara ity!
More
AM

በጣም ረጅም፤ ማንበብ

በሶፍትዌር ውስጥ የመቋቋም ችሎታ ያልተጠበቁ ችግሮች ወይም ውድቀቶች ቢገጥሙም እንኳን አፕሊኬሽኑ በተቀላጠፈ እና በአስተማማኝ ሁኔታ መስራቱን የመቀጠል ችሎታን ያመለክታል።

People Mentioned

Mention Thumbnail

Circuit Breaker

@circuitbreaker

Companies Mentioned

Mention Thumbnail
effect
Mention Thumbnail
Even
featured image - ለፊንቴክ ፕሮጄክቶች የእውነተኛው ዓለም ተከላካይ ስልቶች
Dmitrii Pakhomov HackerNoon profile picture
Dmitrii Pakhomov

Dmitrii Pakhomov

@ymatigoosa

10 yeas of experience of building mission critical Fintech system handling extremely high load

0-item

STORY’S CREDIBILITY

Guide

Guide

Walkthroughs, tutorials, guides, and tips. This story will teach you how to do something new or how to do something better.

በሶፍትዌር ውስጥ የመቋቋም ችሎታ ያልተጠበቁ ችግሮች ወይም ውድቀቶች ቢገጥሙም እንኳን አፕሊኬሽኑ በተቀላጠፈ እና በአስተማማኝ ሁኔታ መስራቱን የመቀጠል ችሎታን ያመለክታል። በፊንቴክ ፕሮጄክቶች የመቋቋም አቅም በተለይ በብዙ ምክንያቶች ከፍተኛ ጠቀሜታ አለው። በመጀመሪያ ኩባንያዎች የቁጥጥር መስፈርቶችን የማሟላት ግዴታ አለባቸው እና የፋይናንስ ተቆጣጣሪዎች በስርዓቱ ውስጥ መረጋጋትን ለማስጠበቅ የአሠራር ማገገምን ያጎላሉ። ከዚህም በላይ የዲጂታል መሳሪያዎች መበራከት እና በሶስተኛ ወገን አገልግሎት ሰጪዎች ላይ መታመን የፊንቴክ ንግዶችን ለደህንነት ስጋቶች ያጋልጣል። የመቋቋም ችሎታ በተለያዩ ምክንያቶች እንደ ሳይበር ማስፈራሪያዎች፣ ወረርሽኞች ወይም ጂኦፖለቲካዊ ክስተቶች፣ ዋና ዋና የንግድ ሥራዎችን እና ወሳኝ ንብረቶችን በመጠበቅ የሚከሰቱትን የመቋረጥ አደጋዎችን ለመቀነስ ይረዳል።

በመልሶ ማቋቋሚያ ቅጦች፣ ሶፍትዌሮች መቋረጦችን ተቋቁመው ሥራውን እንዲቀጥሉ ለማድረግ የተነደፉ ምርጥ ተሞክሮዎችን እና ስልቶችን እንረዳለን። እነዚህ ቅጦች ልክ እንደ ሴፍቲኔት ይሠራሉ፣ ስህተቶችን ለማስተናገድ፣ ጭነትን ለመቆጣጠር እና ከስህተቶች ለማገገም ስልቶችን ይሰጣሉ፣ በዚህም አፕሊኬሽኖች ጠንካራ እና አስተማማኝ ባልሆኑ ሁኔታዎች ውስጥ እንዲቆዩ ያረጋግጣሉ።


በጣም የተለመዱት የማገገሚያ ስልቶች የጅምላ ራስ፣ መሸጎጫ፣ መውደቅ፣ እንደገና መሞከር እና ወረዳ ቆራጭ ያካትታሉ። በዚህ ጽሑፍ ውስጥ, እነሱን ለመፍታት ሊረዷቸው ከሚችሉት የችግሮች ምሳሌዎች ጋር, በዝርዝር እነጋገራለሁ.

የጅምላ ራስ

image


ከላይ ያለውን መቼት እንመልከተው። አንዳንድ መረጃዎችን ለማግኘት ከኋላችን በርካታ የጀርባ ጀርባ ያለው በጣም ተራ መተግበሪያ አለን። ከእነዚህ የኋለኛ ክፍሎች ጋር የተገናኙ በርካታ የኤችቲቲፒ ደንበኞች አሉ። ሁሉም ተመሳሳይ የግንኙነት ገንዳ የሚጋሩ መሆናቸው ታወቀ! እና እንደ ሲፒዩ እና ራም ያሉ ሌሎች ሀብቶች።


ምን ይሆናል፣ ከጀርባዎቹ አንዱ የሆነ አይነት ችግር ካጋጠመው ከፍተኛ የጥያቄ መዘግየት የሚያስከትል ከሆነ? በከፍተኛ የምላሽ ጊዜ ምክንያት፣ አጠቃላይ የግንኙነት ገንዳው ከኋላ 1 ምላሾችን በመጠባበቅ ጥያቄዎች ተይዟል። በውጤቱም፣ ገንዳው ተዳክሞ ስለነበር ለጤናማ የኋላ ክፍል2 እና ለጀርባ 3 የታሰቡ ጥያቄዎች መቀጠል አይችሉም። ይህ ማለት ከጀርባዎቻችን በአንዱ ላይ አለመሳካት በመላው መተግበሪያ ላይ ውድቀትን ሊያስከትል ይችላል. በሐሳብ ደረጃ፣ እኛ የምንፈልገው ከተሳካው የጀርባ አሠራር ጋር የተቆራኘው ተግባር ብቻ ነው ብልሹነት እንዲገጥመው፣ የተቀረው መተግበሪያ በመደበኛነት መስራቱን ሲቀጥል።


የጅምላ ራስ ንድፍ ምንድን ነው?


የ Bulkhead ጥለት የሚለው ቃል ከመርከብ ግንባታ የተገኘ ሲሆን በመርከብ ውስጥ ብዙ ገለልተኛ ክፍሎችን መፍጠርን ያካትታል. በአንደኛው ክፍል ውስጥ ፍሳሽ ከተፈጠረ, በውሃ ይሞላል, ነገር ግን ሌሎች ክፍሎች ምንም ጉዳት ሳይደርስባቸው ይቀራሉ. ይህ ማግለል በአንድ ጥሰት ምክንያት አጠቃላይ መርከቧን ከመስጠም ይከላከላል።

ይህንን ችግር ለማስተካከል የጅምላ ሄድ ንድፍን እንዴት መጠቀም እንችላለን?

image



የBulkhead ጥለት በመተግበሪያው ውስጥ የተለያዩ አይነት ሀብቶችን ለመለየት ጥቅም ላይ ሊውል ይችላል፣ ይህም የአንድ ክፍል ብልሽት መላውን ስርዓት እንዳይጎዳ ይከላከላል። ለችግራችን እንዴት ተግባራዊ ማድረግ እንደምንችል እነሆ፡-


  1. የግንኙነት ገንዳዎችን ማግለል ለእያንዳንዱ የኋለኛ ክፍል (የኋላ1 ፣ የኋላ2 ፣ የኋላ3) የተለያዩ የግንኙነት ገንዳዎችን መፍጠር እንችላለን ። ይህ የጀርባ 1 ከፍተኛ የምላሽ ጊዜዎች ወይም ውድቀቶች እያጋጠመው ከሆነ የግንኙነቱ ገንዳ ራሱን ችሎ እንደሚሟጠጠ ያረጋግጣል፣ ይህም የግንኙነት ገንዳዎች ለbackend2 እና ለኋላ 3 ምንም ጉዳት እንዳይደርስባቸው ያደርጋል። ይህ ማግለል ጤናማ ጀርባዎች በመደበኛነት ጥያቄዎችን ማካሄድ እንዲቀጥሉ ያስችላቸዋል።
  2. ለዳራ እንቅስቃሴዎች ግብዓቶችን መገደብ Bulkheadsን በመጠቀም ለጀርባ እንቅስቃሴዎች እንደ ባች ማቀናበር ወይም የታቀዱ ተግባራት ላሉ ተግባራት ልዩ መርጃዎችን መመደብ እንችላለን። ይህ እነዚህ እንቅስቃሴዎች ለትክክለኛ ጊዜ ስራዎች የሚያስፈልጉትን ሀብቶች እንዳይበሉ ይከላከላል. ለምሳሌ፣ ገቢ ጥያቄዎችን ለማስተናገድ በቂ ግብዓቶች መገኘታቸውን በማረጋገጥ ለጀርባ ተግባራት የተሰጡ የክሮች ወይም የሲፒዩ አጠቃቀምን ብዛት መገደብ እንችላለን።
  3. በመጪ ጥያቄዎች ላይ ገደቦችን ማቀናበር Bulkheads እንዲሁም በተለያዩ የመተግበሪያው ክፍሎች የሚመጡ ጥያቄዎችን ብዛት ለመገደብ ሊተገበር ይችላል። ለምሳሌ፣ ለእያንዳንዱ የላይ ዥረት አገልግሎት በአንድ ጊዜ ሊከናወኑ በሚችሉ የጥያቄዎች ብዛት ላይ ከፍተኛ ገደብ ልናዘጋጅ እንችላለን። ይህ ማንኛውም ነጠላ ጀርባ ስርዓቱን እንዳያደናቅፍ ይከላከላል እና አንድ ሰው በከባድ ጭነት ውስጥ ቢሆንም እንኳ ሌሎች የኋላ ሽፋኖች መስራታቸውን እንዲቀጥሉ ያረጋግጣል።

ቻቼ

image


የእኛ የጀርባ አሠራር በተናጥል ስህተቶችን የማግኘት እድላቸው ዝቅተኛ ነው እንበል። ነገር ግን፣ አንድ ክዋኔ እነዚህን ሁሉ የኋለኛ ክፍሎች በትይዩ መጠየቅን የሚያካትት ከሆነ እያንዳንዱ በራሱ ስህተትን መመለስ ይችላል። እነዚህ ስህተቶች የተከሰቱት በተናጥል ስለሆነ፣ በእኛ መተግበሪያ ውስጥ ያለው አጠቃላይ የስህተት እድል ከማንኛውም የኋላ ጀርባ ካለው የስህተት እድሉ ከፍ ያለ ነው። የድምር ስህተት ፕሮባቢሊቲ ቀመሩን P_total=1−(1-p)^n በመጠቀም ማስላት ይቻላል፣ በዚያ n የኋለኛ ክፍል ስርዓቶች ቁጥር ነው።


ለምሳሌ፣ እያንዳንዳቸው የስህተት ፕሮባቢሊቲ p=0.001 (ከ99.9% SLA ጋር የሚዛመድ) አስር የኋላ ክፍሎች ካሉን የስህተት እድሉ፡-


P_ጠቅላላ=1−(1-0.001)^10=0.009955


ይህ ማለት የእኛ ጥምር SLA ወደ 99% ይወርዳል፣ ይህም በትይዩ የበርካታ የኋላ ክፍሎችን ስንጠይቅ አጠቃላይ አስተማማኝነት እንዴት እንደሚቀንስ ያሳያል። ይህንን ችግር ለማቃለል፣ የማህደረ ትውስታ መሸጎጫ መተግበር እንችላለን።

በማህደረ ትውስታ መሸጎጫ እንዴት መፍታት እንደምንችል

image


የማህደረ ትውስታ መሸጎጫ እንደ ከፍተኛ ፍጥነት ያለው የውሂብ ቋት ሆኖ ያገለግላል፣በተደጋጋሚ የተገኘውን ውሂብ በማከማቸት እና በእያንዳንዱ ጊዜ ቀርፋፋ ሊሆኑ ከሚችሉ ምንጮች የማምጣትን አስፈላጊነት ያስወግዳል። በማህደረ ትውስታ ውስጥ የተከማቹ መሸጎጫዎች በኔትወርኩ ላይ መረጃን ከማምጣት ጋር ሲነፃፀሩ 0% የስህተት እድል ስላላቸው የመተግበሪያችንን አስተማማኝነት በከፍተኛ ሁኔታ ይጨምራሉ። ከዚህም በላይ መሸጎጫ የኔትወርክ ትራፊክን ይቀንሳል, የስህተት እድሎችን የበለጠ ይቀንሳል. ስለዚህ፣ የውስጠ-ማህደረ ትውስታ መሸጎጫ በመጠቀም፣ በእኛ መተግበሪያ ውስጥ ከኋላ መጨረሻ ስርዓታችን ጋር ሲነጻጸር ያነሰ የስህተት መጠን ማሳካት እንችላለን። በተጨማሪም፣ የማህደረ ትውስታ መሸጎጫዎች በአውታረ መረብ ላይ ከተመሰረተው ከማምጣት ይልቅ ፈጣን ውሂብን ሰርስሮ ማውጣትን ይሰጣሉ፣ በዚህም የመተግበሪያ መዘግየትን ይቀንሳሉ—የሚታወቅ ጠቀሜታ።

የማህደረ ትውስታ መሸጎጫ፡ ለግል የተበጁ መሸጎጫዎች

እንደ የተጠቃሚ መገለጫዎች ወይም ምክሮች ላሉ ግላዊ መረጃዎች፣ የማህደረ ትውስታ መሸጎጫዎችን መጠቀም በጣም ውጤታማ ሊሆን ይችላል። ነገር ግን ሁሉም የተጠቃሚ ጥያቄዎች በቋሚነት ወደ ተመሳሳዩ የመተግበሪያ ምሳሌ መሄዳቸውን ማረጋገጥ አለብን ይህም ለእነሱ የተሸጎጠ ውሂብ ለመጠቀም ነው፣ ይህም ተለጣፊ ክፍለ ጊዜዎችን ይፈልጋል። ተለጣፊ ክፍለ ጊዜዎችን መተግበር ፈታኝ ሊሆን ይችላል፣ ነገር ግን ለዚህ ሁኔታ፣ ውስብስብ ዘዴዎችን አንፈልግም። አነስተኛ የትራፊክ መልሶ ማመጣጠን ተቀባይነት አለው፣ ስለዚህ የተረጋጋ ሸክም ማመጣጠን አልጎሪዝም ልክ እንደ ወጥነት ያለው hashing በቂ ነው።


ከዚህም በላይ የመስቀለኛ መንገድ ብልሽት በሚፈጠርበት ጊዜ ወጥነት ያለው ሃሽንግ ከተሳካው መስቀለኛ መንገድ ጋር የተገናኙ ተጠቃሚዎች ብቻ እንደገና ማመጣጠን እንዲችሉ ያደርጋል፣ ይህም የስርዓቱን መስተጓጎል ይቀንሳል። ይህ አካሄድ ለግል የተበጁ መሸጎጫዎችን ማስተዳደርን ቀላል ያደርገዋል እና የመተግበሪያችንን አጠቃላይ መረጋጋት እና አፈፃፀም ያሻሽላል።

የማህደረ ትውስታ መሸጎጫ፡ የአካባቢ ውሂብ ማባዛት።


image


መሸጎጫ ለማድረግ ያሰብነው ውሂብ ወሳኝ ከሆነ እና በእያንዳንዱ ጥያቄ ስርዓታችን የሚይዘው ከሆነ ለምሳሌ የመዳረሻ ፖሊሲዎች፣ የደንበኝነት ምዝገባ ዕቅዶች ወይም ሌሎች በእኛ ጎራ ውስጥ ያሉ አስፈላጊ አካላት — የዚህ ውሂብ ምንጭ በስርዓታችን ውስጥ ጉልህ የሆነ ውድቀትን ሊፈጥር ይችላል። ይህንን ፈተና ለመቅረፍ አንዱ አቀራረብ ይህንን መረጃ በቀጥታ ወደ መተግበሪያችን ማህደረ ትውስታ መገልበጥ ነው።


በዚህ ሁኔታ፣ በምንጩ ውስጥ ያለው የውሂብ መጠን ማስተዳደር የሚችል ከሆነ፣ በመተግበሪያችን መጀመሪያ ላይ የዚህን ውሂብ ቅጽበታዊ ገጽ እይታ በማውረድ ሂደቱን ልንጀምር እንችላለን። በመቀጠል፣ የተሸጎጠው መረጃ ከምንጩ ጋር መመሳሰሉን ለማረጋገጥ የዝማኔ ክስተቶችን መቀበል እንችላለን። ይህንን ዘዴ በመከተል እያንዳንዱ መልሶ ማግኘት በ 0% የስህተት እድል በቀጥታ ከማህደረ ትውስታ ስለሚከሰት ይህንን ወሳኝ ውሂብ የማግኘት አስተማማኝነትን እናሳድጋለን። በተጨማሪም፣ ውሂብን ከማህደረ ትውስታ ሰርስሮ ማውጣት ልዩ ፈጣን ነው፣ በዚህም የመተግበሪያችንን አፈጻጸም ያሳድጋል። ይህ ስልት በውጫዊ የውሂብ ምንጭ ላይ ከመተማመን ጋር ተያይዞ የሚመጣውን አደጋ ውጤታማ በሆነ መልኩ ይቀንሳል፣ ይህም ለመተግበሪያችን አሰራር ወሳኝ መረጃን ተከታታይ እና አስተማማኝ መዳረሻን ያረጋግጣል።

ዳግም ሊጫን የሚችል ውቅር

ነገር ግን፣ በመተግበሪያ ጅምር ላይ መረጃን የማውረድ አስፈላጊነት፣ በዚህም የጅምር ሂደቱን በማዘግየት ፈጣን አፕሊኬሽን ለመጀመር ከሚደግፈው '12-factor መተግበሪያ' መርሆዎች ውስጥ አንዱን ይጥሳል። ነገር ግን መሸጎጫ መጠቀም የሚያስገኘውን ጥቅም ማጣት አንፈልግም። ይህንን ችግር ለመፍታት፣ ሊሆኑ የሚችሉ መፍትሄዎችን እንመርምር።


ፈጣን ጅምር ወሳኝ ነው፣በተለይ እንደ Kubernetes ላሉ መድረኮች፣በፈጣን አፕሊኬሽን ፍልሰት ላይ ወደተለያዩ የአካል ኖዶች። እንደ እድል ሆኖ፣ Kubernetes እንደ ጅምር መፈተሻዎች ያሉ ባህሪያትን በመጠቀም በዝግታ የሚጀምሩ መተግበሪያዎችን ማስተዳደር ይችላል።


ሌላው ሊያጋጥመን የሚችለው ፈተና አፕሊኬሽኑ እየሰራ ሳለ ውቅሮችን ማዘመን ነው። ብዙውን ጊዜ የምርት ችግሮችን ለመፍታት የመሸጎጫ ጊዜዎችን ማስተካከል ወይም የጊዜ ማብቂያዎችን መጠየቅ አስፈላጊ ነው. የተሻሻሉ የውቅረት ፋይሎችን በፍጥነት ወደ መተግበሪያችን ማሰማራት ብንችል እንኳን፣ እነዚህን ለውጦች መተግበር ብዙውን ጊዜ ዳግም መጀመርን ይጠይቃል። በእያንዳንዱ መተግበሪያ የተራዘመ የማስጀመሪያ ጊዜ፣ ተንከባላይ ዳግም መጀመር ለተጠቃሚዎቻችን ጥገናዎችን ማሰማራትን በእጅጉ ሊያዘገይ ይችላል።


ይህንን ለመቅረፍ አንዱ መፍትሄ ውቅሮችን በአንድ ጊዜ በተለዋዋጭ ማከማቸት እና የጀርባ ክር በየጊዜው ማዘመን ነው። ነገር ግን፣ እንደ ኤችቲቲፒ የጥያቄ ጊዜ ማብቃት ያሉ አንዳንድ መመዘኛዎች ተዛማጅ ውቅር ሲቀየር ኤችቲቲፒ ወይም የውሂብ ጎታ ደንበኞችን እንደገና ማስጀመር ሊያስፈልጋቸው ይችላል። ሆኖም፣ አንዳንድ ደንበኞች፣ እንደ ካሳንድራ ሾፌር ለጃቫ፣ ይህን ሂደት በማቅለል፣ በራስ ሰር ዳግም መጫንን ይደግፋሉ።


ዳግም ሊጫኑ የሚችሉ አወቃቀሮችን መተግበር የረዥም ጊዜ የመተግበሪያ ማስጀመሪያ ጊዜዎችን አሉታዊ ተፅእኖ ለመቀነስ እና እንደ ባህሪ ባንዲራ አተገባበርን ማመቻቸት ያሉ ተጨማሪ ጥቅሞችን ይሰጣል። ይህ አካሄድ የማዋቀር ዝመናዎችን በብቃት በምንመራበት ወቅት የመተግበሪያውን አስተማማኝነት እና ምላሽ ሰጪነት እንድንጠብቅ ያስችለናል።

መውደቅ

አሁን ደግሞ ሌላ ችግርን እንይ፡ በስርዓታችን ውስጥ የተጠቃሚ ጥያቄ ሲደርሰው እና ወደ ኋላ ወይም ዳታቤዝ ጥያቄ በመላክ አልፎ አልፎ፣ ከተጠበቀው መረጃ ይልቅ የስህተት ምላሽ ይደርሳል። በመቀጠል ስርዓታችን ለተጠቃሚው 'ስህተት' ምላሽ ይሰጣል።


ነገር ግን፣ በብዙ ሁኔታዎች፣ ተጠቃሚውን ትልቅ ቀይ የስህተት መልእክት ከማስቀመጥ ይልቅ የውሂብ እድሳት መዘግየት እንዳለ ከሚጠቁመው መልእክት ጋር ትንሽ ጊዜ ያለፈበት ውሂብ ማሳየት የበለጠ ተመራጭ ሊሆን ይችላል።


image


ይህንን ችግር ለመፍታት እና የስርዓታችንን ባህሪ ለማሻሻል የ Fallback ጥለትን መተግበር እንችላለን። ከዚህ ስርዓተ-ጥለት በስተጀርባ ያለው ፅንሰ-ሀሳብ ሁለተኛ ደረጃ የመረጃ ምንጭ መኖርን ያካትታል፣ ይህም ከዋናው ምንጭ ጋር ሲነጻጸር ዝቅተኛ ጥራት ወይም ትኩስነት ያለው መረጃ ሊይዝ ይችላል። ዋናው የመረጃ ምንጭ የማይገኝ ከሆነ ወይም ስህተት ከተመለሰ ስርዓቱ ከዚህ ሁለተኛ ምንጭ ወደነበረበት ለመመለስ ሊወድቅ ይችላል፣ ይህም የሆነ የስህተት መልእክት ከማሳየት ይልቅ መረጃ ለተጠቃሚው መቅረቡን ያረጋግጣል።

እንደገና ይሞክሩ

image


ከላይ ያለውን ምስል ከተመለከቱ፣ አሁን እያጋጠመን ባለው ጉዳይ እና ከመሸጎጫ ምሳሌ ጋር ባጋጠመን ጉዳይ መካከል ያለውን ተመሳሳይነት ያስተውላሉ።


እሱን ለመፍታት፣ እንደገና መሞከር በመባል የሚታወቀውን ንድፍ መተግበርን ግምት ውስጥ ማስገባት እንችላለን። በመሸጎጫዎች ላይ ከመተማመን ይልቅ ስርዓቱ ስህተት በሚፈጠርበት ጊዜ ጥያቄውን በራስ-ሰር ለመላክ ሊዘጋጅ ይችላል። ይህ የድጋሚ ሙከራ ንድፍ ቀለል ያለ አማራጭ ያቀርባል እና በመተግበሪያችን ውስጥ የስህተት እድሎችን በብቃት ሊቀንስ ይችላል። የውሂብ ለውጦችን ለማስተናገድ ብዙውን ጊዜ ውስብስብ የመሸጎጫ ዋጋ የማስወገድ ዘዴዎችን ከሚጠይቀው መሸጎጫ በተለየ፣ ያልተሳኩ ጥያቄዎችን እንደገና መሞከር ለመተግበር በአንጻራዊነት ቀላል ነው። በሶፍትዌር ኢንጂነሪንግ ውስጥ በጣም ፈታኝ ከሆኑ ተግባራት ውስጥ መሸጎጫ መሸጎጫ በስፋት የሚወሰድ እንደመሆኑ መጠን እንደገና መሞከር የስህተት አያያዝን ያመቻቻል እና የስርዓት መቋቋምን ያሻሽላል።

የወረዳ ሰባሪ

image


ነገር ግን ሊያስከትሉ የሚችሉትን መዘዞች ሳያስቡ የድጋሚ ሙከራ ስትራቴጂን መውሰድ ወደ ተጨማሪ ችግሮች ሊመራ ይችላል።


ከጀርባዎቻችን አንዱ ውድቀት አጋጥሞት እንደሆነ እናስብ። በእንዲህ ያለ ሁኔታ፣ ወደተሳካው የጀርባው ክፍል እንደገና መሞከርን መጀመር የትራፊክ መጠን ከፍተኛ ጭማሪ ሊያስከትል ይችላል። ይህ ድንገተኛ የትራፊክ መጨናነቅ የኋለኛውን ክፍል ሊያጨናንቀው ይችላል፣ ይህም ውድቀትን ያባብሳል እና በስርአቱ ላይ ከፍተኛ ጉዳት ሊያስከትል ይችላል።


ይህን ተግዳሮት ለመቋቋም የድጋሚ ሙከራውን ስርዓተ-ጥለት ከወረዳ ሰባሪው ንድፍ ጋር ማሟላት አስፈላጊ ነው። የወረዳ ሰባሪው የታችኛው ተፋሰስ አገልግሎቶችን የስህተት መጠን የሚቆጣጠር እንደ መከላከያ ዘዴ ሆኖ ያገለግላል። የስህተት መጠኑ አስቀድሞ ከተገለጸው ገደብ ሲያልፍ፣ የወረዳ ተላላፊው ለተጎዳው አገልግሎት ለተወሰነ ጊዜ የሚቀርቡ ጥያቄዎችን ያቋርጣል። በዚህ ጊዜ ውስጥ፣ ስርዓቱ ያልተሳካው የአገልግሎት ጊዜ እንዲያገግም ተጨማሪ ጥያቄዎችን ከመላክ ይቆጠባል። ከተሰየመው የጊዜ ክፍተት በኋላ የወረዳ ተላላፊው አገልግሎቱ የተረጋጋ መሆኑን በማረጋገጥ የተወሰነ ቁጥር ያላቸውን ጥያቄዎች በጥንቃቄ እንዲያልፉ ያደርጋል። አገልግሎቱ ካገገመ, መደበኛ ትራፊክ ቀስ በቀስ ይመለሳል; አለበለዚያ ወረዳው ክፍት ሆኖ ይቆያል, አገልግሎቱ መደበኛ ስራውን እስኪጀምር ድረስ ጥያቄዎችን ማገድ ይቀጥላል. የወረዳ ሰባሪው ስርዓተ-ጥለትን ከእንደገና ሙከራ አመክንዮ ጋር በማዋሃድ የስህተት ሁኔታዎችን በብቃት ማስተዳደር እና በኋለኛው ውድቀት ወቅት የስርዓት ጭነትን መከላከል እንችላለን።

መጠቅለል

በማጠቃለያው፣ እነዚህን የመቋቋሚያ ቅጦችን በመተግበር፣ አፕሊኬሽኖቻችንን በድንገተኛ አደጋዎች ላይ ማጠናከር፣ ከፍተኛ ተገኝነትን መጠበቅ እና ለተጠቃሚዎች እንከን የለሽ ተሞክሮ ማቅረብ እንችላለን። በተጨማሪም፣ ቴሌሜትሪ የፕሮጀክት ተቋቋሚነትን በሚሰጥበት ጊዜ ሊታለፍ የማይገባው ሌላ መሳሪያ መሆኑን አፅንዖት መስጠት እፈልጋለሁ። ጥሩ ምዝግብ ማስታወሻዎች እና መለኪያዎች የአገልግሎቶችን ጥራት በእጅጉ ሊያሳድጉ እና በአፈፃፀማቸው ላይ ጠቃሚ ግንዛቤዎችን ሊሰጡ ይችላሉ ፣በእነሱ የበለጠ ለማሻሻል በመረጃ ላይ የተመሠረተ ውሳኔ ለማድረግ ይረዳሉ።

L O A D I N G
. . . comments & more!

About Author

Dmitrii Pakhomov HackerNoon profile picture
Dmitrii Pakhomov@ymatigoosa
10 yeas of experience of building mission critical Fintech system handling extremely high load

ተንጠልጣይ መለያዎች

ይህ ጽሑፍ ቀርቧል...

Permanent on Arweave
Read on Terminal Reader
Read this story in a terminal
 Terminal
Read this story w/o Javascript
Read this story w/o Javascript
 Lite

Mentioned in this story

companies
profiles
X REMOVE AD