د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

ان-میموري د ډیټا ذخیره کولو لپاره د مفکورو یوه مجموعه ده کله چې دا د غوښتنلیک په رام کې زیرمه کیږي ، او ډیسک د بیک اپ لپاره کارول کیږي. په کلاسیک طریقو کې، ډاټا په ډیسک کې ساتل کیږي او حافظه په کیچ کې ساتل کیږي. د مثال په توګه، د معلوماتو پروسس کولو لپاره د بیک انډ سره یو ویب غوښتنلیک دا د ذخیره کولو غوښتنه کوي: دا ترلاسه کوي، بدلوي، او ډیری ډیټا د شبکې له لارې لیږدول کیږي. په حافظه کې، حسابونه ډیټا ته لیږل کیږي - ذخیره کولو ته، چیرته چې دوی پروسس کیږي او شبکه لږ بار شوي.

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

د ان-میموري سره نور کوم امکانات شتون لري او دا څه ډول چلند دی؟ ولادیمیر پلیګین - په GridGain کې انجنیر. د بیاکتنې دا مواد به د ویب اپلیکیشن بیک انډ پراختیا کونکو لپاره ګټور وي چې د ان-میموري سره کار نه کوي او غواړي هڅه وکړي، یا د سافټویر پراختیا او معمارۍ ډیزاین کې عصري رجحاناتو سره علاقه ولري.

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

څوک ان-میموري کاروي او څنګه

په حافظه کې ډیری وختونه کارول کیږي چیرې چې د کاروونکو ګړندي تعامل یا د ډیټا لوی مقدار پروسس کولو ته اړتیا وي.

  • بانکونه In-Memory وکاروئ، د بیلګې په توګه، د ځنډ کمولو لپاره کله چې پیرودونکي غوښتنلیکونه کاروي یا د پور جاري کولو دمخه د پیرودونکي تحلیل کړي.
  • Fintech د ان-میموري څخه کار اخلي ترڅو د بانکونو لپاره د خدماتو او غوښتنلیکونو فعالیت ښه کړي چې د معلوماتو پروسس او تحلیل بهر سرچینه کوي. 
  • د بیمې شرکتونه: د خطرونو محاسبه کول، د بیلګې په توګه، د څو کلونو په اوږدو کې د پیرودونکو معلوماتو تحلیل کولو سره.
  • لوژستیک شرکتونه. دوی ډیری ډیټا پروسس کوي ، د مثال په توګه ، د زرګونو پیرامیټونو سره د بار وړلو او مسافرینو ترانسپورت لپاره غوره لارې محاسبه کول ، او د بار وړلو حالت تعقیبوي.
  • پرچون. په حافظه کې حلونه د پیرودونکو ګړندي خدمت کولو کې مرسته کوي او د معلوماتو لوی مقدار پروسس کوي: بار وړل ، رسیدونه ، لیږدونه ، په ګودامونو کې د زرګونو توکو شتون ، او تحلیلي راپورونه چمتو کوي.
  • В IoT په حافظه کې دودیز ډیټابیسونه ځای په ځای کوي.
  • درملتون شرکتونه د ان-میموري څخه کار اخلي، د بیلګې په توګه، د مخدره توکو د ترکیبونو له لارې ترتیب کول. 

زه به تاسو ته یو څو مثالونه درکړم چې زموږ پیرودونکي څنګه د حافظې حلونه کاروي او تاسو څنګه کولی شئ پخپله پلي کړئ.

په حافظه کې د لومړني ذخیره په توګه

زموږ یو پیرودونکي د متحده ایالاتو څخه د طبي ساینسي تجهیزاتو لوی عرضه کونکی دی. دوی د دوی اصلي ډیټا ذخیره کولو په توګه د حافظې حل حل کاروي. ټول معلومات په ډیسک کې زیرمه شوي، او د ډیټا فرعي سیټ چې په فعاله توګه کارول کیږي په رام کې ساتل کیږي. د ذخیره کولو لاسرسي میتودونه معیاري دي - GDBC (جنریک ډیټابیس نښلونکی) او د SQL پوښتنې ژبه.

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

په ټولیز ډول دې ته د حافظې ډیټابیس (IMDB) یا د حافظې مرکزي ذخیره ویل کیږي. د حل دا ټولګي ډیری نومونه لري، دا یوازینی ندي. 

د IMDB ځانګړتیاوې:

  • هغه معلومات چې په حافظه کې زیرمه شوي او د SQL له لارې ورته لاسرسی لري د نورو طریقو په څیر دی. دوی همغږي شوي، یوازې د وړاندې کولو لاره، د دوی د حل کولو طریقه توپیر لري. لیږد د معلوماتو تر مینځ کار کوي.

  • IMDB د اړونده ډیټابیسونو په پرتله ګړندی دی ځکه چې دا د ډیسک په پرتله د رام څخه د معلوماتو ترلاسه کول ګړندي دي. 
  • د داخلي اصلاح کولو الګوریتمونه لږ لارښوونې لري.
  • IMDBs په غوښتنلیکونو کې د معلوماتو ، پیښو او لیږدونو اداره کولو لپاره مناسب دي.

IMDBs په جزوي ډول د ACID مالتړ کوي: اتومي، ثبات، او جلا کول. مګر دوی د "ثبات" ملاتړ نه کوي - کله چې بریښنا بنده شي ، ټول معلومات له لاسه ورکوي. د ستونزې د حل لپاره، تاسو کولی شئ سنیپ شاټونه وکاروئ - د ډیټابیس "سنیپ شاټ"، په هارډ ډرایو کې د ډیټابیس بیک اپ سره ورته وي، یا د ریبوټ وروسته د معلوماتو بیرته راګرځولو لپاره لیږد (لاګ) ثبت کړئ.

د خطا زغمونکي غوښتنلیکونو رامینځته کولو لپاره

راځئ چې د غلطۍ زغمونکي ویب غوښتنلیک کلاسیک جوړښت تصور کړو. دا د دې په څیر کار کوي: ټولې غوښتنې د سرورونو ترمینځ د ویب بیلانس لخوا ویشل شوي. دا سیسټم مستحکم دی ځکه چې سرورونه یو بل نقل کوي او د پیښو په صورت کې بیک اپ کوي.

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

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

څه پیښیږي کله چې یو سرور ناکام شي؟

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

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

یو ویب اپلیکیشن اړین دی چې د ډیرو کاروونکو ملاتړ وکړي او سست نه شي ترڅو دوی په آرامۍ سره کار وکړي. مګر که دا رد شي، د هرې بلې غوښتنې سره د سیشن پلورنځي سره د خبرو اترو وخت به ډیر شي. دا د نورو کاروونکو لپاره اوسط ځنډ زیاتوي. مګر دوی نه غواړي د پخوا په پرتله ډیر انتظار وکړي.

دا ستونزه زموږ د بل پیرودونکي په څیر حل کیدی شي، د متحده ایالاتو څخه د PASS لوی چمتو کونکي. دا د کلستر ویب سیشنونو لپاره ان-میموري کاروي. د دې کولو لپاره، دا دوی په محلي توګه نه، بلکې په مرکزي توګه ذخیره کوي - د حافظې په کلستر کې. پدې حالت کې ، ناستې خورا ګړندي شتون لري ځکه چې دوی دمخه په RAM کې دي.

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

کله چې یو سرور خراب شي، بیلانسر د کریش شوي سرور څخه نورو سرورونو ته غوښتنې لیږي، لکه څنګه چې په کلاسیک جوړښت کې. مګر یو مهم توپیر شتون لري: ناستې د حافظې په کلستر کې ساتل کیږي او سرورونه د سقوط شوي سرور غونډو ته لاسرسی لري.

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

د هایبرډ لیږد تحلیلي پروسس کول (HTAP)

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

په HTAP کې، هر څه په بل ډول کار کوي - د ورته ډیټا ذخیره د غوښتنلیکونو څخه د لیږد لیږد لپاره کارول کیږي، او د تحلیلي پوښتنو لپاره چې کولی شي بشپړولو لپاره ډیر وخت ونیسي. کله چې ډاټا په RAM کې وي، تحلیلي پوښتنې په چټکۍ سره اجرا کیږي، او د ډیټابیس سره سرور لږ بار شوی (په اوسط ډول).

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

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

د حافظې د حلونو ادغام

یوه (نسبتا) ساده لاره - له پیل څخه هرڅه ته وده ورکړئ. موږ ډاټا په ډیسک کې ساتو او په حافظه کې ګرم ډیټا ذخیره کوو. دا د سرور ریبوټ یا بندیدو کې ژوندي پاتې کیدو کې مرسته کوي.

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

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

  • د ډیټابیس سره د نښلولو معیاري لاره چې د هغې لاندې موقعیت لري (د مثال په توګه، MySQL)؛
  • د معیاري پوښتنې ژبه، ترڅو د ذخیره کولو سره د تعامل منطق بیا لیکل او بدل نشي؛
  • معامله - د تعامل سیمانټیک ساتل.

که ټول درې شرطونه پوره شي، نو ادغام ممکن دی. موږ د حافظې دننه ډیټا گرډ د غوښتنلیک او ډیټابیس ترمینځ ځای په ځای کوو. اوس د لیکلو غوښتنې به لاندې ډیټابیس ته واستول شي ، او د لوستلو غوښتنې به لاندې ډیټابیس ته واستول شي که چیرې ډاټا په زیرمه کې نه وي.

د ویب خدماتو لپاره په حافظه کې جوړښت: د ټیکنالوژۍ اساسات او اصول

که چیرې ډیټا ته ګړندي لاسرسی او د هغې پروسس کول ستاسو لپاره مهم وي ، د مثال په توګه ، د سوداګرۍ تحلیلونو لپاره ، تاسو کولی شئ د ان-میموري پلي کولو په اړه فکر وکړئ. او د پلي کولو لپاره ، تاسو کولی شئ دواړه میتودونه وکاروئ کله چې نوي جوړښت ډیزاین کړئ.

سرچینه: www.habr.com

Add a comment