د خدمت میش څه شی دی؟

یو ځل بیا سلام!.. د کورس د پیل په ماښام "د سافټویر معمار" موږ بله ګټوره ژباړه چمتو کړې ده.

د خدمت میش څه شی دی؟

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

د ګوګل، IBM او Lyft څخه Istio اوس مهال ترټولو مشهور خدمت میش جوړښت دی. او Kubernetes، چې په اصل کې په ګوګل کې رامینځته شوی، اوس د کانټینر آرکیسټریشن یوازینۍ چوکاټ دی چې د اسټیو لخوا ملاتړ کیږي. پلورونکي هڅه کوي د اسټیو سوداګریز ملاتړ شوي نسخې رامینځته کړي. دا به په زړه پوري وي چې وګورئ چې دوی د خلاصې سرچینې پروژې ته کوم نوي شیان راوړي.

په هرصورت، اسټیو یوازینی اختیار نه دی ځکه چې د نورو خدماتو میش پلي کول رامینځته کیږي. پته sidecar proxy ترټولو مشهور تطبیق دی، لکه څنګه چې د بووینټ، HashiCorp، Solo.io او نورو پروژو لخوا قضاوت کیدی شي. د بدیل معمارۍ هم شتون لري: د Netflix ټیکنالوژۍ وسیلې کټ یو له هغه لارو څخه دی چیرې چې د خدماتو میش فعالیت د ربن ، هیسټریکس ، یوریکا ، آرچیوس کتابتونونو ، او همدارنګه پلیټ فارمونه لکه Azure خدمت فابریک له لارې پلي کیږي.

د خدماتو میش هم د خدماتو اجزاو او دندو لپاره خپل اصطلاحات لري:

  • د کانټینر آرکیسټریشن چوکاټ. لکه څنګه چې د غوښتنلیک زیربنا کې ډیر او ډیر کانټینرونه اضافه کیږي، د کانټینرونو د څارنې او مدیریت لپاره یو جلا وسیلې ته اړتیا ده - د کانټینر آرکیسټریشن چوکاټ. Kubernetes په کلکه دا ځای نیولی دی، حتی د دې اصلي سیالي کونکي Docker Swarm او Mesosphere DC/OS د بدیل په توګه د Kubernetes سره ادغام وړاندیز کوي.
  • خدمتونه او مثالونه (Kubernetes Pods). یوه بیلګه د مایکرو سرویس یو واحد روان کاپي ده. ځینې ​​​​وختونه یو مثال یو کانټینر دی. په Kubernetes کې، یوه بیلګه د خپلواک کانټینرونو کوچنۍ ډله لري چې د پوډ په نوم یادیږي. پیرودونکي په ندرت سره یو مثال یا پوډ ته مستقیم لاسرسی لري؛ ډیری وختونه ، دوی یو خدمت ته لاسرسی لري ، کوم چې د ورته ، توزیع وړ او د خطا زغمونکي مثالونو یا پوډونو (عکسونو) سیټ دی.
  • Sidecar پراکسي. Sidecar پراکسي د یو واحد مثال یا پوډ سره کار کوي. د سایډکار پراکسي نقطه د هغه کانټینر څخه راوتلی یا پراکسي ترافیک ته لاره ده چې دا ورسره کار کوي او ترافیک بیرته راګرځوي. Sidecar د نورو Sidecar Proxies سره اړیکه لري او د آرکیسټریشن چوکاټ لخوا اداره کیږي. ډیری خدمت میش پلي کول د مثال یا پوډ دننه او بهر ټول ترافیک د مخنیوي او اداره کولو لپاره د سایډکار پراکسي کاروي.
  • د خدماتو کشف. کله چې یو مثال د بل خدمت سره اړیکه نیولو ته اړتیا لري، دا اړتیا لري چې د بل خدمت صحي او موجود مثال ومومي. عموما، مثال د DNS لټون ترسره کوي. د کانټینر آرکیسټریشن چوکاټ د مثالونو لیست ساتي چې غوښتنې ترلاسه کولو لپاره چمتو دي او د DNS پوښتنو لپاره انٹرفیس چمتو کوي.
  • د بار توازن. ډیری کانټینر آرکیسټریشن چوکاټونه په 4 پرت (ترانسپورت) کې د بار توازن چمتو کوي. د خدماتو میش په 7 پرت (د غوښتنلیک کچه) کې ډیر پیچلي بار توازن پلي کوي ، په الګوریتمونو کې بډایه او د ترافیک اداره کولو کې خورا مؤثره. د بار توازن تنظیمات د API په کارولو سره بدل کیدی شي ، تاسو ته اجازه درکوي نیلي شنه یا کانري ګمارنې تنظیم کړئ.
  • کوډ ورکول. د خدماتو میش کولی شي غوښتنې او ځوابونه کوډ او کوډ کړي، له خدماتو څخه دا بار لرې کوي. د خدماتو میش کولی شي د موجوده دوامداره اتصالاتو لومړیتوب ورکولو یا بیا کارولو سره فعالیت ته وده ورکړي ، د نوي اړیکو رامینځته کولو لپاره د ګران محاسبې اړتیا کموي. د ټرافیک کوډ کولو ترټولو عام تطبیق دی متقابل TLS (mTLS)، چیرې چې عامه کلیدي زیربنا (PKI) د Sidecar پراکسي لخوا کارولو لپاره سندونه او کیلي تولید او توزیع کوي.
  • تصدیق او واک ورکول. د خدماتو میش کولی شي د غوښتنلیک څخه بهر یا دننه شوي غوښتنې تایید او تصدیق کړي، یوازې د اعتبار وړ غوښتنې مثالونو ته لیږل کیږي.
  • د اتوماتیک بندولو نمونې ملاتړ. د خدمت میش ملاتړ کوي د اتوماتیک بندولو نمونه، کوم چې غیر صحي پیښې جلا کوي او بیا په تدریجي ډول د اړتیا په وخت کې د صحي پیښو حوض ته راستنیږي.

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

د خدمت میش څه شی دی؟
د خدماتو میش کې د کنټرول الوتکه د سایډکار پراکسي او ډیټا پلان ترمینځ ترتیب توزیع کوي.

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

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

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

ماډلر مونولیتس او DDD

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

Add a comment