Linux & OpenSource
1.8K subscribers
593 photos
29 videos
49 files
926 links
اینجا از علاقمندی هام پست میزارم : )
لینوکس - بلاکچین - هوش مصنوعی - تازه های تکنولوژی
و گاهی پست های غیرمرتبط
Download Telegram
@uselinux

🔥API Gateway
#microservice
در دنیای مایکروسرویس ها(microservice) از مباحث چالش برانگیز . اند پوینت های مورد استفاده برای سرویسدهی به کلاینت ها هستند .
@uselinux
یک کلاینت را در نظر بگیرید که بصورت اپلیکیشن موبایل است . و قرار است خدمات جامعی به مشتری ارائه کند . چه خواهد شد اگر این کلاینت بخواهد با N سرویس متفاوت ارتباط برقرار کند ؟

احتمالا در تئوری . اپلیکیشن باید به روت های expose شده از هر سرویس ریکوئست بزند و دیتای مورد نیاز خود را بگیرد ..
@uselinux
اما در واقعیت .چالش های مهمی بر سر راه است از جمله : احتمال دارد سرویس مورد نظر . خروجی مناسب را ندهد . و همچنین برای گرفتن یک لیست مورد نیاز از داده ها به تعداد بسیار بالایی روت ریکوئست ارسال شود
@uselinux
در پروژه ای همانند آمازون شاید نیاز باشد به گاهی به صد ها روت مختلف ریکوئست ارسال شود . بدلیل بزرگی و پیچیدگی و تعداد بالای سرویس های موجود . که باعث خواهد شد کدبیس کلاینت غیر بهینه و پیچیده و همچنین روی نت ورک و منابع موبایل سربار زیادی متحمل خواهد شد
@uselinux
و همچنین ممکن است پروتکل ارتباطی هر سرویس با دیگری متفاوت باشد (وب سوکت - rest - rpc - ,.....)

از راه حل های خوب و بهینه برای جلوگیری از چنین مشکلی Api Gateway است

به این صورت که اند پوینت هایی برای تجمیع و یکپارچه سازی ارائه میشوند تا خروجی نهایی از آنها به کلاینت ها برسد
@uselinux
ا api gateway توسعه پذیری کم خطر را نیز فراهم میکند . تا با تغییرات سرویس ها . ارتباط کلاینت ها با سرویس ها دچار دگرگونی زیادی نشود
(salvador_immortal)
@uselinux