paint-brush
د سافټویر سیسټمونو ډیزاین کولو پرمهال د پیچلتیا سره څنګه معامله وکړئلخوا@fairday
64,676 لوستل
64,676 لوستل

د سافټویر سیسټمونو ډیزاین کولو پرمهال د پیچلتیا سره څنګه معامله وکړئ

لخوا Aleksei23m2024/02/05
Read on Terminal Reader
Read this story w/o Javascript

ډېر اوږد؛ لوستل

پیچلتیا دښمن دی! راځئ چې دا زده کړو چې څنګه ورسره معامله وکړو!
featured image - د سافټویر سیسټمونو ډیزاین کولو پرمهال د پیچلتیا سره څنګه معامله وکړئ
Aleksei HackerNoon profile picture

دا ټول څه دي؟

هره ورځ، هره شیبه زموږ د انجینرۍ مسلک په جریان کې ، موږ د مختلف پیچلتیاو او شرایطو ډیری بیلابیل ستونزو سره مخ کیږو چیرې چې موږ اړتیا لرو پریکړه وکړو یا د معلوماتو نشتوالي له امله یې وځنډوو. هرکله چې موږ نوي خدمات رامینځته کوو، زیربناوې جوړې کوو، یا حتی د پراختیا پروسې رامینځته کوو، موږ د مختلفو ننګونو یوه لویه نړۍ لمس کوو.


دا ننګونه ده، او شاید حتی ناممکن، د ټولو ستونزو لیست کول. تاسو به یوازې د دې مسلو سره مخ شئ که تاسو په یو ځانګړي ځای کې کار کوئ. له بلې خوا، ډیری شتون لري چې موږ ټول باید پوه شو چې څنګه حل کړو، ځکه چې دا د معلوماتي ټیکنالوژۍ سیسټمونو جوړولو لپاره خورا مهم دي. د لوړ احتمال سره، تاسو به په ټولو پروژو کې ورسره مخامخ شئ.


په دې لیکنه کې به خپلې تجربې د ځینو هغو ستونزو سره شریکې کړم چې د سافټویر پروګرامونو د جوړولو پر مهال ورسره مخ شوې.

د کراس پرې کولو اندیښنه څه ده؟

که موږ ويکيپېډيا ته وګورو، موږ به لاندې تعريف پيدا کړو


د اړخ پر بنسټ سافټویر پراختیا کې، د کراس-کټینګ اندیښنې د یو پروګرام اړخونه دي چې په ډیری ماډلونو اغیزه کوي، پرته له دې چې په هیڅ یو کې د پټیدو احتمال شتون ولري. دا اندیښنې ډیری وختونه د ډیزاین او پلي کولو په دواړو برخو کې د سیسټم له پاتې برخې څخه په پاکه توګه نه شي مینځل کیدی، او کیدای شي د ویشلو (کوډ نقل)، ټنګنګ (د سیسټمونو ترمنځ د پام وړ انحصار)، یا دواړه پایله ولري.


دا په پراخه کچه تشریح کوي چې دا څه دي، مګر زه غواړم دا یو څه پراخ او ساده کړم:

د کراس پرې کولو اندیښنه د سیسټم/سازمان یوه مفکوره یا برخه ده چې په نورو ډیری برخو اغیزه کوي (یا "پرې پرې کول").


د دې ډول اندیښنو غوره مثالونه د سیسټم جوړښت، ننوتل، امنیت، د لیږد مدیریت، ټیلی میټری، ډیټابیس ډیزاین او ډیری نور دي. موږ به وروسته پدې مقاله کې د دوی ډیری په اړه توضیح کړو.


د کوډ په کچه، د کراس-کټینګ اندیښنې اکثرا د تخنیکونو په کارولو سره پلي کیږي لکه د اړخ اورینټ پروګرام (AOP) ، چیرې چې دا اندیښنې په جلا برخو کې ماډل شوي چې د غوښتنلیک په اوږدو کې پلي کیدی شي. دا د سوداګرۍ منطق د دې اندیښنو څخه جلا ساتي، کوډ د لوستلو وړ او ساتلو وړ کوي.

د اړخونو طبقه بندي

ډیری ممکنه لارې شتون لري چې څنګه د اړخونو طبقه بندي کولو له لارې د مختلف ملکیتونو لکه دائره ، اندازې ، فعالیت ، اهمیت ، هدف او نورو سره طبقه بندي کړئ ، مګر پدې مقاله کې زه د ساده ساحې طبقه بندي کارولو لپاره ځم. له دې څخه، زما مطلب دا دی چې چیرې دا ځانګړی اړخ لارښوونه کیږي که دا ټول سازمان وي، یو ځانګړی سیسټم، یا د دې سیسټم یو ځانګړی عنصر.


نو، زه به اړخونه په میکرو او مایکرو ویشم.


د میکرو اړخ څخه زما مطلب دا دی چې په عمده ډول هغه نظرونه چې موږ یې د ټول سیسټم لپاره تعقیب کوو لکه د ټاکل شوي سیسټم جوړښت او د هغې ډیزاین (مونولیتیک، مایکرو خدمتونه، د خدماتو پر بنسټ جوړښت)، د ټیکنالوژۍ سټیک، سازمان جوړښت، او داسې نور. د میکرو اړخونه په عمده توګه د ستراتیژیکو او لوړې کچې پورې تړاو لري. پریکړې


په ورته وخت کې، مایکرو اړخ د کوډ کچې او پراختیا ته خورا نږدې دی. د مثال په توګه، کوم چوکاټ د ډیټابیس سره د تعامل لپاره کارول کیږي، د فولډرونو او ټولګیو پروژې جوړښت، یا حتی د ځانګړو شیانو ډیزاین نمونې.


پداسې حال کې چې دا طبقه بندي غوره نه ده، دا د ممکنه ستونزو د پوهیدو او د هغو حلونو اهمیت او اغیزو په جوړښت کې مرسته کوي چې موږ یې پلي کوو.


پدې مقاله کې، زما لومړنی تمرکز به په میکرو اړخونو وي.

میکرو اړخونه

د سازمان جوړښت

کله چې ما یوازې د سافټویر جوړښت په اړه زده کړه پیل کړه، ما د کانوی د قانون او په سازماني جوړښت باندې د هغې اغیزې په اړه ډیری په زړه پورې مقالې ولوستلې. په ځانګړې توګه دا یو . نو، دا قانون وايي


هر هغه سازمان چې یو سیسټم ډیزاین کوي (په پراخه کچه تعریف شوی) به داسې ډیزاین تولید کړي چې جوړښت یې د سازمان د ارتباطي جوړښت یوه کاپي وي.


زه تل په دې باور یم چې دا مفهوم په حقیقت کې خورا نړیوال دی او د طلایی اصول استازیتوب کوي.


بیا ما د ماډلینګ سیسټمونو لپاره د ایریک ایونز ډومین چلونکي ډیزاین (DDD) چلند زده کول پیل کړل. ایریک ایونز د محدودو شرایطو پیژندنې په اهمیت ټینګار کوي. پدې مفهوم کې د پیچلي ډومین ماډل ویشل شامل دي په کوچنیو، ډیر مدیریت وړ برخو کې، هر یو د خپلې محدودې پوهې سره. دا طریقه د ټیم په اغیزمنه اړیکو کې مرسته کوي، ځکه چې دا د ټول ډومین پراخې پوهې ته اړتیا کموي او د شرایطو بدلون کموي، پدې توګه د خبرو اترو اغیزمن کول. د متن بدلول د هرکله ترټولو خراب او خورا سرچینې مصرفونکی شی دی. حتی کمپیوټرونه ورسره مبارزه کوي. که څه هم دا امکان نلري چې د شرایطو بدلولو بشپړ نشتوالی ترلاسه کړي، زه فکر کوم چې دا هغه څه دي چې موږ یې باید هڅه وکړو.


Fantasy about keeping in mind a lot of bounded contexts

د کانوی قانون ته راستنیدل ، ما د دې سره ډیری مسلې وموندلې.


لومړۍ مسله چې زه د کانوی قانون سره مخ شوی یم ، کوم چې وړاندیز کوي چې د سیسټم ډیزاین تنظیمي جوړښت منعکس کوي ، د پیچلي او هراړخیز محدود شرایطو رامینځته کولو احتمال دی. دا پیچلتیا هغه وخت رامینځته کیږي کله چې سازماني جوړښت د ډومین سرحدونو سره سمون نه لري، د پابند شرایطو لامل کیږي چې په پراخه کچه یو له بل سره تړلي او د معلوماتو سره ډک شوي. دا د پرمختیایی ټیم لپاره د بار بار شرایطو بدلولو لامل کیږي.


بله مسله دا ده چې تنظیمي اصطلاحات د کوډ کچې ته لیکي. کله چې سازماني جوړښتونه بدل شي، دا د کوډبیس بدلونونو ته اړتیا لري، ارزښتناکه سرچینې مصرفوي.


په دې توګه، د Inverse Conway Maneuver تعقیب د سیسټم او سازمان په جوړولو کې مرسته کوي چې د مطلوب سافټویر جوړښت هڅوي. په هرصورت، دا د یادونې وړ ده چې ووایو چې دا طریقه به د پخوا څخه جوړ شوي جوړښت او جوړښتونو کې ډیر ښه کار ونکړي ځکه چې پدې مرحله کې بدلونونه اوږد دي، مګر دا په استثنایی ډول په پیل کې ترسره کوي ځکه چې دوی د هر ډول بدلونونو معرفي کولو لپاره ګړندي دي.

د خټو لوی بال

دا نمونه یا "د نمونې ضد" پرته له کوم جوړښت څخه سیسټم رامینځته کوي. دلته هیڅ قواعد شتون نلري، نه سرحدونه، او هیڅ ستراتیژي شتون نلري چې څنګه د ناباوره وده کونکي پیچلتیا کنټرول کړي. پیچلتیا د سافټویر سیسټمونو جوړولو په سفر کې ترټولو سخت دښمن دی.


Entertaining illustration made by ChatGPT

د دې لپاره چې د دې ډول سیسټم جوړولو څخه مخنیوی وشي، موږ اړتیا لرو چې ځانګړي مقررات او محدودیتونه تعقیب کړو.

د سیسټم جوړښت

د سافټویر آرکیټیکچر لپاره بې شمیره تعریفونه شتون لري. زه ډیری یې خوښوم ځکه چې دوی د دې مختلف اړخونه پوښي. په هرصورت، د معمارۍ په اړه د استدلال کولو وړتیا لپاره، موږ په طبیعي توګه اړتیا لرو چې ځینې یې زموږ په ذهنونو کې جوړ کړو. او دا د یادونې وړ ده چې دا تعریف ممکن وده وکړي. نو، لږترلږه د اوس لپاره، زه د ځان لپاره لاندې توضیحات لرم.


د سافټویر جوړښت د پریکړو او انتخابونو په اړه دی چې تاسو هره ورځ کوئ چې جوړ شوي سیسټم اغیزه کوي.


د پریکړو کولو لپاره تاسو اړتیا لرئ د "باغ" اصولو او د رامینځته کیدونکو ستونزو د حل لپاره نمونې ولرئ، دا هم اړینه ده چې ووایاست چې د اړتیاو پوهیدل د هغه څه رامینځته کولو لپاره کلیدي ده چې سوداګرۍ ته اړتیا لري. په هرصورت، ځینې وختونه اړتیاوې شفافې نه وي یا حتی تعریف شوي ندي، پدې حالت کې، دا غوره ده چې نور وضاحت ترلاسه کولو لپاره انتظار وکړئ یا په خپل تجربه تکیه وکړئ او په خپل وجدان باور وکړئ. مګر په هرصورت، تاسو نشئ کولی په سمه توګه پریکړې وکړئ که تاسو د تکیه کولو لپاره اصول او نمونې نلرئ. دا هغه ځای دی چې زه د سافټویر آرکیټیکچر سټایل تعریف ته راځم.


د سافټویر آرکیټیکچر سټایل د اصولو او نمونو مجموعه ده چې د سافټویر جوړولو څرنګوالی ډیزاین کوي.


دلته ډیری بیلابیل معماري سټایلونه شتون لري چې د پلان شوي معمارۍ مختلف اړخونو باندې تمرکز کوي ، او په یوځل کې د دوی ډیری پلي کول یو عادي حالت دی.


د مثال په توګه، لکه:

  1. Monolithic معمارۍ

  2. د ډومین لخوا پرمخ وړل شوي ډیزاین

  3. د اجزاو پر بنسټ

  4. کوچني خدمتونه

  5. پایپ او فلټرونه

  6. د پیښې لخوا پرمخ وړل کیږي

  7. مایکروکرنل

  8. د خدمت پر بنسټ


او داسې نور…


البته، دوی خپلې ګټې او زیانونه لري، مګر ترټولو مهم شی چې ما زده کړل هغه دا دی چې جوړښت په تدریجي ډول وده کوي پداسې حال کې چې د حقیقي ستونزو پورې اړه لري. د واحد معمارۍ سره پیل کول د عملیاتي پیچلتیاو کمولو لپاره غوره انتخاب دی، ډیر احتمال لري چې دا جوړښت به ستاسو اړتیاوې پوره کړي حتی د محصول تولید بازار فټ (PMI) مرحلې ته رسیدو وروسته. په پیمانه، تاسو ممکن د پیښې پرمخ وړونکي چلند او مایکرو خدماتو ته د خپلواک ځای په ځای کولو ، متفاوت ټیک سټیک چاپیریال ، او لږ جوړ شوي جوړښت (او په ورته وخت کې د پیښې لخوا پرمخ وړل شوي او پب - فرعي چلندونو طبیعت له امله لږ شفاف) ته د رسیدو په اړه فکر وکړئ که چیرې دا منل شوي دي). سادگي او موثریت نږدې دي او په یو بل باندې لوی تاثیر لري. معمولا، پیچلي جوړښتونه د نوي ځانګړتیاوو د پراختیا سرعت اغیزه کوي، د موجوده موجوداتو ملاتړ او ساتنه، او د سیسټم طبیعي تکامل ننګوي.


په هرصورت، پیچلي سیسټمونه ډیری وختونه پیچلي او جامع جوړښت ته اړتیا لري، کوم چې ناگزیر دی.


په عادلانه توګه، دا یوه خورا پراخه موضوع ده، او د طبیعي تکامل لپاره د سیسټمونو جوړښت او جوړولو په اړه ډیری عالي نظرونه شتون لري. زما د تجربې پر بنسټ، ما لاندې طریقې کار کړی دی:

  1. نږدې تل د واحد معمارۍ سټایل سره پیل کیږي ځکه چې دا ډیری ستونزې له مینځه وړي چې د توزیع شوي سیسټمونو طبیعت له امله رامینځته کیږي. دا د روښانه سرحدونو سره د اجزاوو جوړولو باندې تمرکز کولو لپاره د ماډلر مونولیت تعقیب کول هم معنی لري. د اجزاو پراساس چلند پلي کول کولی شي دوی سره د پیښو په کارولو سره د یو بل سره په خبرو اترو کې مرسته وکړي ، مګر مستقیم تلیفونونه (aka RPC) په پیل کې شیان ساده کوي. په هرصورت، دا مهمه ده چې د اجزاوو تر مینځ انحصار تعقیب کړئ ځکه چې که A برخه د B برخې په اړه ډیر څه پوهیږي، شاید، دا معنی لري چې دوی په یو کې یوځای کړي.
  2. کله چې تاسو وضعیت ته نږدې شئ کله چې تاسو اړتیا لرئ خپل پراختیا او سیسټم اندازه کړئ، تاسو کولی شئ د سټینګلر نمونې تعقیب په پام کې ونیسئ ترڅو په تدریجي ډول هغه برخې استخراج کړئ چې اړتیا لري په خپلواکه توګه ځای په ځای شي یا حتی د ځانګړو اړتیاو سره اندازه شي.
  3. اوس ، که تاسو د راتلونکي روښانه لید لرئ ، کوم چې یو څه د نه منلو وړ بخت دی ، تاسو کولی شئ د مطلوب جوړښت په اړه پریکړه وکړئ. په دې وخت کې، تاسو کولی شئ د آرکیسټریشن او کوریوګرافي طریقو په پلي کولو سره د مایکرو سرویسس معمارۍ په لور د حرکت کولو پریکړه وکړئ، د خپلواک پیمانه لیکلو او لوستلو عملیاتو لپاره د CQRS نمونې شامل کړئ، یا حتی پریکړه وکړئ چې د واحد معمارۍ سره ودریږي که دا ستاسو اړتیاوې پوره کړي.


دا هم اړینه ده چې د شمیرو او میټریکونو پوه شئ لکه DAU (ورځني فعال کارونکي) ، MAU (میاشتنۍ فعال کارونکي) ، RPC (په ثانیه کې غوښتنه) ، او TPC (په هره ثانیه کې لیږد) ځکه چې دا کولی شي تاسو سره د انتخاب کولو کې مرسته وکړي ځکه چې جوړښت 100 فعال کاروونکي او 100 ملیون فعال کاروونکي توپیر لري.


د وروستي یادښت په توګه، زه به ووایم چې جوړښت د محصول په بریالیتوب کې د پام وړ اغیزه لري. په اندازه کولو کې د محصولاتو لپاره ضعیف ډیزاین شوي جوړښت ته اړتیا ده ، کوم چې احتمال د ناکامۍ لامل کیږي ځکه چې پیرودونکي به انتظار ونه کړي پداسې حال کې چې تاسو سیسټم اندازه کوئ ، دوی به سیالي غوره کړي ، نو موږ باید د احتمالي پیمانه کولو څخه مخکې واوسو. که څه هم زه دا منم چې ځینې وختونه دا یو کمزوری چلند نه وي، نظر دا دی چې د توزیع وړ مګر دمخه اندازه شوی سیسټم نه وي. له بلې خوا، د یو خورا پیچلي او دمخه پیمانه شوي سیسټم درلودل چې پیرودونکي نلري یا د دوی ډیری ترلاسه کولو پلانونه به تاسو ته ستاسو په سوداګرۍ کې د هیڅ شی لپاره پیسې مصرف نه کړي.

د ټیکنالوژۍ سټیک انتخاب

د ټیکنالوژۍ سټیک غوره کول هم د لوی کچې پریکړه ده ځکه چې دا په استخدام، د سیسټم طبیعي تکامل لید، توزیع، او د سیسټم فعالیت اغیزه کوي.


دا د ټیکنالوژۍ سټیک غوره کولو لپاره د لومړني ملاحظاتو لیست دی:

  • د پروژې اړتیاوې او پیچلتیا. د مثال په توګه، یو ساده ویب غوښتنلیک د Blazor چوکاټ سره جوړ کیدی شي که ستاسو پراختیا کونکي ورسره تجربه ولري، مګر د WebAssembly د بشپړتیا نشتوالي له امله، د اوږدې مودې بریالیتوب لپاره د عکس العمل او ټایپ سکریپټ غوره کول غوره پریکړه کیدی شي.
  • د اندازه کولو وړتیا او د فعالیت اړتیاوې. که تاسو د لوی مقدار ترافیک ترلاسه کولو اټکل کوئ ، د Django په پرتله د ASP.NET کور غوره کول ممکن د سمو غوښتنو اداره کولو کې د دې غوره فعالیت له امله یو هوښیار انتخاب وي. په هرصورت، دا پریکړه د ټرافیک په اندازه پورې اړه لري چې تاسو یې تمه لرئ. که تاسو اړتیا لرئ د ټیټ ځنډ سره احتمالي ملیارد غوښتنې اداره کړئ ، د کثافاتو راټولولو شتون ممکن یوه ننګونه وي.
  • استخدام، د پراختیا وخت، او لګښت. په ډیری مواردو کې، دا هغه فکتورونه دي چې موږ یې باید پاملرنه وکړو. بازار ته وخت، د ساتنې لګښت، او استخدام ثبات ستاسو د سوداګرۍ اړتیاوې پرته له خنډونو پرمخ وړي.
  • د ټیم تخصص او سرچینې. ستاسو د پرمختیایی ټیم مهارت سیټ یو مهم فاکتور دی. دا عموما د ټیکنالوژیو کارولو لپاره خورا اغیزمن دی چې ستاسو ټیم لا دمخه له دې سره آشنا دی پرته لدې چې د نوي سټیک زده کولو کې د پانګوونې لپاره قوي دلیل شتون ولري.
  • بلوغت. یوه پیاوړې ټولنه او د کتابتونونو او وسایلو بډایه اکوسیستم کولی شي د پراختیا پروسه خورا اسانه کړي. مشهور ټیکنالوژي اکثرا د ټولنې غوره ملاتړ لري، کوم چې د ستونزو حل کولو او سرچینو موندلو لپاره ارزښتناکه کیدی شي. په دې توګه، تاسو کولی شئ سرچینې خوندي کړئ او په عمده توګه په محصول تمرکز وکړئ.
  • اوږد مهاله ساتنه او ملاتړ. د ټیکنالوژۍ اوږد مهاله وړتیا په پام کې ونیسئ. هغه ټیکنالوژي چې په پراخه کچه منل شوي او ملاتړ کیږي لږ احتمال لري چې متروک شي او عموما منظم تازه او پرمختګونه ترلاسه کوي.


د ډیری ټیکنالوژۍ سټیک درلودل څنګه د سوداګرۍ وده اغیزه کولی شي؟

له یوې لید څخه ، د یو بل سټیک معرفي کول ستاسو استخدام اندازه کولی شي ، مګر له بلې خوا ، دا د ساتنې اضافي لګښتونه راوړي ځکه چې تاسو اړتیا لرئ د دواړو سټیکونو ملاتړ وکړئ. نو، لکه څنګه چې ما مخکې وویل، زما په نظر کې، یوازې اضافي اړتیا باید د نورو ټیکنالوژۍ سټیکونو شاملولو لپاره دلیل وي.


مګر د یوې ځانګړې ستونزې لپاره د غوره وسیلې غوره کولو اصول څه دي؟

ځینې وختونه تاسو بل انتخاب نلرئ پرته له دې چې د یوې ځانګړې ستونزې حل کولو لپاره نوي وسیلې راوړو چې پورته ذکر شوي ورته نظرونو پراساس ، پدې حالت کې ، دا معنی لري چې غوره حل غوره کړئ.


د سیسټمونو رامینځته کول پرته له دې چې یو ځانګړي ټیکنالوژۍ ته لوړ یوځای کول یوه ننګونه وي. بیا هم، دا ګټوره ده چې د داسې حالت لپاره هڅه وکړئ چیرې چې سیسټم په کلکه د ټیکنالوژۍ سره یوځای شوی نه وي، او دا به مړ نشي که سبا، یو ځانګړی چوکاټ یا وسیله زیانمن شي یا حتی ضایع شي.


بل مهم پام د خلاصې سرچینې او ملکیت سافټویر انحصار پورې اړه لري. د ملکیت سافټویر تاسو ته لږ انعطاف او د دودیز کیدو امکان درکوي. بیا هم، ترټولو خطرناک فاکتور د پلورونکي لاک ان دی، چیرې چې تاسو د پلورونکي محصولاتو، نرخونو، شرایطو او سړک نقشه پورې تړلي یاست. دا خطرناک کیدی شي که چیرې پلورونکی سمت بدل کړي، نرخونه لوړ کړي، یا محصول بند کړي. د خلاصې سرچینې سافټویر دا خطر کموي، ځکه چې یو واحد اداره دا کنټرول نه کوي. په ټولو کچو کې د ناکامۍ یو واحد ټکی له مینځه وړل د ودې لپاره د باور وړ سیسټمونو رامینځته کولو کلیدي ده.

د ناکامۍ واحد ټکی (SPOF)

د ناکامۍ یو واحد ټکی (SPOF) د سیسټم هرې برخې ته اشاره کوي چې، که دا ناکام شي، د ټول سیسټم د فعالیت مخه نیسي. په ټولو کچو کې د SPOFs له منځه وړل د هر هغه سیسټم لپاره خورا مهم دي چې لوړ شتون ته اړتیا لري. هرڅه، پشمول د پوهې، پرسونل، سیسټم اجزا، کلاوډ چمتو کونکي، او انټرنیټ کیبلونه، ناکام کیدی شي.


ډیری بنسټیز تخنیکونه شتون لري چې موږ یې د ناکامۍ د واحد ټکي له منځه وړلو لپاره کارولی شو:

  1. بې ځایه. د مهم اجزاو لپاره بې ځایه کیدل پلي کړئ. دا پدې مانا ده چې د بیک اپ اجزا شتون لري چې کولی شي په غاړه واخلي که لومړنۍ برخه ناکامه شي. بې ځایه کیدل د سیسټم په بیلابیلو پرتونو کې پلي کیدی شي ، پشمول هارډویر (سرورونه ، ډیسکونه) ، شبکه کول (لینکونه ، سویچونه) او سافټویر (ډیټابیسونه ، غوښتنلیک سرورونه). که تاسو په یو کلاوډ چمتو کونکي کې هرڅه کوربه کوئ او حتی هلته بیک اپ لرئ ، په بل کې د منظم اضافي بیک اپ رامینځته کولو په اړه فکر وکړئ ترڅو د ناورین په صورت کې خپل ورک شوي لګښت کم کړئ.
  2. د معلوماتو مرکزونه. خپل سیسټم په ډیری فزیکي ځایونو کې توزیع کړئ، لکه د معلوماتو مرکزونه یا کلاوډ سیمې. دا طریقه ستاسو سیسټم د موقعیت مشخص ناکامیو لکه د بریښنا بندیدو یا طبیعي پیښو په وړاندې ساتي.
  3. ناکامي. د خپلو ټولو برخو (DNS، CDN، Load Balancers، Kubernetes، API Gateways، او Databases) لپاره د ناکامۍ طریقه پلي کړئ. څنګه چې مسلې په ناڅاپي ډول رامینځته کیدی شي ، نو دا خورا مهم دی چې د بیک اپ پلان ولرئ ترڅو د اړتیا سره سم د هغې کلون سره کومې برخې ځای په ځای کړئ.
  4. د لوړ شتون خدمتونه. ډاډ ترلاسه کړئ چې ستاسو خدمتونه په افقی ډول د توزیع وړ او د پیل څخه خورا شتون لري د لاندې اصولو په تعقیب سره جوړ شوي دي:
    • د خدمت بې ثباتۍ تمرین کړئ او په حافظه کې کیچونو کې د کارونکي سیشنونو ذخیره کولو څخه مخنیوی وکړئ. پرځای یې ، د توزیع شوي کیچ سیسټم وکاروئ ، لکه ریډیس.
    • د منطق د پراختیا په وخت کې د پیغام مصرف کولو تاریخي ترتیب باندې تکیه کولو څخه ډډه وکړئ.
    • د API مصرف کونکو ګډوډولو مخنیوي لپاره ماتونکي بدلونونه کم کړئ. که امکان ولري، د شاته سره مطابقت لرونکي بدلونونه غوره کړئ. همدارنګه، کله ناکله لګښت په پام کې ونیسئ، د ماتونکي بدلون پلي کول ممکن ډیر لګښت اغیزمن وي.
    • د ګمارنې پایپ لاین کې د مهاجرت اجرا کول شامل کړئ.
    • د همغږي غوښتنو اداره کولو لپاره یوه تګلاره جوړه کړئ.
    • د اعتبار او مشاهدې د لوړولو لپاره د خدماتو کشف، څارنه، او ننوتل پلي کړئ.
    • د سوداګرۍ منطق ته وده ورکړئ ترڅو غیر فعال وي، دا ومني چې د شبکې ناکامي حتمي دي.
  5. د انحصار بیاکتنه. په منظمه توګه بیاکتنه وکړئ او بهرني انحصارونه کم کړئ. هر بهرنۍ انحصار کولی شي احتمالي SPOFs معرفي کړي، نو دا اړینه ده چې د دې خطرونو پوهه او کم کړي.
  6. په منظمه توګه د پوهې شریکول. هیڅکله په خپل سازمان کې د پوهې خپرولو اهمیت مه هیروئ. خلک غیر متوقع کیدی شي، او په یو فرد تکیه کول خطرناک دي. د ټیم غړي وهڅوئ چې خپل پوهه د اسنادو له لارې ډیجیټل کړي. په هرصورت، د ډیرو اسنادو په پام کې ونیسئ. د دې پروسې ساده کولو لپاره مختلف AI وسیلې وکاروئ.

پایله

پدې مقاله کې ، موږ د میکرو ډیری کلیدي اړخونه پوښلي او موږ څنګه کولی شو د دوی پیچلتیا سره معامله وکړو.


د لوستلو لپاره مننه! بل ځل به ګورو!