سروس ميش ڇا آهي؟

هيلو ٻيهر! .. ڪورس جي شروعات جي موقعي تي "سافٽ ويئر معمار" اسان هڪ ٻيو مفيد ترجمو تيار ڪيو آهي.

سروس ميش ڇا آهي؟

هڪ سروس ميش هڪ ترتيب ڏيڻ جي قابل، گهٽ-ويڪرائي واري انفراسٽرڪچر پرت آهي جيڪا ايپليڪيشن پروگرامنگ انٽرفيس (APIs) جي وچ ۾ نيٽ ورڪ تي ٻڌل بين پروسيس ڪميونيڪيشن جي وڏي مقدار کي سنڀالڻ لاءِ گهربل آهي. سروس ميش ڪنٽينر ٿيل ۽ اڪثر وقتي ايپليڪيشن انفراسٽرڪچر سروسز جي وچ ۾ تيز، قابل اعتماد ۽ محفوظ رابطي کي قابل بڻائي ٿو. سروس ميش صلاحيتون مهيا ڪري ٿي جهڙوڪ سروس دريافت، لوڊ بيلنسنگ، انڪرپشن، شفافيت، سراغ لڳائڻ، تصديق ۽ اختيار ڪرڻ، ۽ خودڪار بند ٿيل نمونن جي مدد (سرڪٽ برير).
هڪ سروس ميش عام طور تي لاڳو ڪيو ويندو آهي هر خدمت جي مثال کي پراکسي مثال سان مهيا ڪندي، سڏيو ويندو آهي سائڊ ڪار. سائڊ ڪار خدمتن جي وچ ۾ رابطي کي سنڀاليو، حفاظتي مسئلن جي نگراني ۽ حل ڪرڻ، اهو آهي، هر شيء جيڪا انفرادي خدمتن کان ختم ٿي سگهي ٿي. اهڙيءَ طرح، ڊولپرز ايپليڪيشن ڪوڊ لکي، برقرار رکي سگهن ٿا، ۽ خدمت ڪري سگهن ٿا، ۽ سسٽم ايڊمنسٽريٽر سروس ميش سان ڪم ڪري سگهن ٿا ۽ ايپليڪيشن کي هلائي سگهن ٿا.

گوگل، IBM ۽ Lyft کان Istio هن وقت سڀ کان مشهور خدمت ميش فن تعمير آهي. ۽ ڪبرنيٽس، جيڪو اصل ۾ گوگل تي تيار ڪيو ويو هو، هاڻي اهو واحد ڪنٽينر آرڪيسٽريشن فريم ورڪ آهي جيڪو Istio جي مدد سان آهي. وينڊرز ٺاهڻ جي ڪوشش ڪري رهيا آهن تجارتي طور تي سپورٽ ورزن Istio جي. اهو ڏسڻ لاءِ دلچسپ هوندو ته اهي اوپن سورس پروجيڪٽ ۾ ڪهڙيون نيون شيون آڻي سگهن ٿيون.

بهرحال، Istio واحد اختيار نه آهي جيئن ته ٻين سروس ميش تي عمل درآمد ٿي رهيا آهن. نمونو sidecar proxy اهو سڀ کان وڌيڪ مشهور عمل آهي، جيئن منصوبن طرفان فيصلو ڪري سگهجي ٿو Buoyant، HashiCorp، Solo.io ۽ ٻيا. هتي متبادل آرڪيٽيڪچرز پڻ آهن: Netflix ٽيڪنالاجي ٽول ڪٽ انهن طريقن مان هڪ آهي جتي سروس ميش ڪارڪردگي ربن، هسٽرڪس، يوريڪا، آرڪيائيس لائبريرين، ۽ پليٽ فارمن جهڙوڪ Azure سروس فيبرڪ ذريعي لاڳو ٿئي ٿي.

سروس ميش جي خدمت جي اجزاء ۽ افعال لاءِ پڻ پنھنجي اصطلاح آھي:

  • ڪنٽينر آرڪيسٽريشن فريم ورڪ. جيئن ته ايپليڪيشن انفراسٽرڪچر ۾ وڌيڪ کان وڌيڪ ڪنٽينر شامل ڪيا ويا آهن، ڪنٽينرز جي نگراني ۽ انتظام ڪرڻ لاءِ هڪ الڳ اوزار جي ضرورت آهي - هڪ ڪنٽينر آرڪيسٽريشن فريم ورڪ. ڪبرنيٽس هن جڳهه تي مضبوطيءَ سان قبضو ڪري ورتو آهي، ايتري قدر جو ان جا مکيه حریف Docker Swarm ۽ Mesosphere DC/OS پيش ڪن ٿا ڪبرنيٽس سان انضمام کي متبادل طور.
  • خدمتون ۽ مثال (Kubernetes Pods). هڪ مثال هڪ مائڪرو سروس جي هڪ واحد هلندڙ ڪاپي آهي. ڪڏهن ڪڏهن هڪ مثال هڪ ڪنٽينر آهي. ڪبرنيٽس ۾، هڪ مثال آزاد ڪنٽينرز جي هڪ ننڍڙي گروپ تي مشتمل آهي جنهن کي پوڊ سڏيو ويندو آهي. گراهڪ گهٽ ۾ گهٽ ڪنهن مثال يا پوڊ تائين سڌو سنئون رسائي حاصل ڪندا آهن؛ گهڻو ڪري، اهي هڪ خدمت تائين رسائي ڪندا آهن، جيڪا هڪجهڙائي، اسپيبلبل ۽ غلطي برداشت ڪندڙ مثالن يا پوڊس (نقل) جو هڪ سيٽ آهي.
  • سائڊ ڪار پراکسي. Sidecar Proxy ھڪڙي ھڪڙي مثال يا پوڊ سان ڪم ڪري ٿو. Sidecar Proxy جو نقطو آهي روٽ يا پراکسي ٽريفڪ جيڪو ڪنٽينر مان اچي رهيو آهي اهو ڪم ڪري ٿو ۽ ٽريفڪ واپس ڪري ٿو. Sidecar ٻين Sidecar Proxies سان لهه وچڙ ۾ آهي ۽ منظم ڪيو ويندو آهي آرڪيسٽريشن فريم ورڪ. ڪيتريون ئي سروس ميش لاڳو ڪرڻ Sidecar Proxy استعمال ڪن ٿيون سڀني ٽرئفڪ کي روڪڻ ۽ منظم ڪرڻ لاءِ هڪ مثال يا پوڊ جي اندر ۽ ٻاهر.
  • سروس دريافت. جڏهن هڪ مثال ڪنهن ٻئي خدمت سان رابطو ڪرڻ جي ضرورت آهي، ان کي ڳولڻ جي ضرورت آهي (ڳولا) ٻي خدمت جو هڪ صحتمند ۽ دستياب مثال. عام طور تي، مثال DNS ڏسندي انجام ڏئي ٿو. ڪنٽينر آرڪيسٽريشن فريم ورڪ مثالن جي هڪ فهرست برقرار رکي ٿو جيڪي درخواستون وصول ڪرڻ لاءِ تيار آهن ۽ DNS سوالن لاءِ هڪ انٽرفيس مهيا ڪري ٿو.
  • لوڊ توازن. اڪثر ڪنٽينر آرڪيسٽريشن فريم ورڪ مهيا ڪن ٿا لوڊ بيلنسنگ تي پرت 4 (ٽرانسپورٽ). سروس ميش پرت 7 (ايپليڪيشن ليول) تي وڌيڪ پيچيده لوڊ بيلنسنگ لاڳو ڪري ٿي، الورورٿمز ۾ مالا مال ۽ ٽرئفڪ کي منظم ڪرڻ ۾ وڌيڪ اثرائتو. لوڊ بيلنسنگ سيٽنگون تبديل ڪري سگھجن ٿيون API استعمال ڪندي، توهان کي نيري-سائي يا ڪينري ڊيپلائيشن کي ترتيب ڏيڻ جي اجازت ڏئي ٿي.
  • پاسخاطري ڪرڻ. سروس ميش درخواستن ۽ جوابن کي انڪريپٽ ۽ ڊريڪٽ ڪري سگھي ٿو، خدمتن مان ھن بوجھ کي ختم ڪندي. سروس ميش موجوده مسلسل ڪنيڪشن کي ترجيح ڏيڻ يا ٻيهر استعمال ڪندي ڪارڪردگي کي بهتر بڻائي سگھي ٿو، نوان ڪنيڪشن ٺاهڻ لاء قيمتي حساب جي ضرورت کي گھٽائڻ. ٽريفڪ انڪرپشن جو سڀ کان وڌيڪ عام عمل آهي گڏيل TLS (mTLS), جتي هڪ عوامي اهم انفراسٽرڪچر (PKI) ٺاهي ۽ تقسيم ڪري ٿو سرٽيفڪيٽ ۽ ڪنجيون استعمال لاءِ Sidecar Proxy.
  • تصديق ۽ اختيار. سروس ميش ايپليڪيشن جي ٻاهران يا اندر ڪيل درخواستن جي تصديق ۽ تصديق ڪري سگهي ٿي، صرف تصديق ٿيل درخواستن کي مثالن ڏانهن موڪليندي.
  • خودڪار بند نموني جي حمايت. سروس ميش سپورٽ ڪري ٿو خودڪار بند ڪرڻ وارو نمونو، جيڪو غير صحت مند مثالن کي الڳ ڪري ٿو ۽ پوءِ آهستي آهستي انهن کي صحتمند مثالن جي تلاءَ ۾ واپس آڻي ٿو جڏهن ضرورت هجي.

سروس ميش ايپليڪيشن جو حصو جيڪو مثالن جي وچ ۾ نيٽورڪ ٽرئفڪ کي منظم ڪري ٿو سڏيو ويندو آهي ڊيٽا جهاز. ٺاھ ٺاھيو ۽ ترتيب ڏيو جيڪو ڪنٽرول سنڀاليندو آھي ڊيٽا جهاز، هڪ الڳ استعمال ڪندي ڪيو ويندو آهي ڪنٽرول جهاز. ڪنٽرول جهاز عام طور تي شامل آهي يا ايپليڪيشن کي ڪنٽرول ڪرڻ لاءِ API، CLI، يا GUI سان ڳنڍڻ لاءِ ٺهيل آهي.

سروس ميش ڇا آهي؟
سروس ميش ۾ ڪنٽرول جهاز سائڊڪر پراکسي ۽ ڊيٽا جهاز جي وچ ۾ ترتيب ورهائي ٿو.

سروس ميش آرڪيٽيڪچر اڪثر ڪري پيچيده آپريشنل مسئلن کي حل ڪرڻ لاء استعمال ڪيو ويندو آهي ڪنٽينرز ۽ مائڪرو سروسز استعمال ڪندي. ميدان ۾ پونيئر microservices ڪمپنيون آهن جهڙوڪ Lyft، Netflix ۽ Twitter، جيڪي دنيا جي لکين صارفين کي مستحڪم خدمتون مهيا ڪن ٿيون. (هتي هڪ تفصيلي نظر آهي ڪجهه تعميراتي چيلينجز تي Netflix جو منهن.). گھٽ گهربل ايپليڪيشنن لاءِ، سادو آرڪيٽيڪچر ڪافي ٿيندو.

سروس ميش فن تعمير ممڪن ناهي ته ڪڏهن به سڀني ايپليڪيشن آپريشن ۽ ترسيل مسئلن جو جواب هجي. آرڪيٽيڪٽس ۽ ڊولپرز وٽ اوزارن جو هڪ وڏو هٿيار آهي، ۽ انهن مان صرف هڪ هٿيار آهي، جيڪو ڪيترن ئي ڪمن مان، صرف هڪ حل ڪرڻ گهرجي - هيمرنگ ناخن. Microservices Reference Architecture from NGINX، مثال طور، ڪيترن ئي مختلف ماڊل شامل آهن جيڪي مائڪرو سروسز استعمال ڪندي مسئلن کي حل ڪرڻ لاءِ مسلسل طريقا مهيا ڪن ٿا.

اهي عنصر جيڪي هڪ خدمت ميش آرڪيٽيڪچر ۾ گڏ ٿين ٿا، جهڙوڪ NGINX، ڪنٽينرز، ڪبرنيٽس، ۽ مائڪرو سروسز هڪ آرڪيٽيڪچرل طريقي جي طور تي، غير سروس ميش جي عملن ۾ برابر پيداوار ٿي سگهي ٿي. مثال طور، Istio هڪ مڪمل سروس ميش فن تعمير جي طور تي ٺهيل هئي، پر ان جي ماڊليت جو مطلب آهي ته ڊولپرز صرف انهن ٽيڪنالاجي اجزاء کي منتخب ۽ لاڳو ڪري سگهن ٿا جيڪي انهن جي ضرورت آهي. انهي کي ذهن ۾ رکڻ سان، اهو ضروري آهي ته سروس ميش جي تصور جي واضح سمجھ کي وڌايو، جيتوڻيڪ توهان کي پڪ ناهي ته توهان ڪڏهن به ان کي مڪمل طور تي پنهنجي ايپليڪيشن ۾ لاڳو ڪرڻ جي قابل هوندا.

ماڊلر monoliths ۽ ڊي ڊي ڊي

جو ذريعو: www.habr.com

تبصرو شامل ڪريو