Iran Open Source (IOS)
2.63K subscribers
6.69K photos
147 videos
1.69K files
1.16K links
کانال IOS:
💎 امنیت سایبری، امنیت اطلاعات، امنیت شبکه
💎 دوره‌های تخصصی شبکه، امنیت و دیتاسنتر
💎 مجازی‌سازی، پردازش ابری و ذخیره سازی
💎 معرفی کتاب
💎 اخبار IT، امنیت، هک و نفوذ

🌀 مدیر کانال: میثم ناظمی
@Meysam_Nazemi

🌀 مدیر تبلیغات: @MoNaITCU
Download Telegram
اخیرا اصطلاح #microservices را در گپ و گفت های فناوری زیاد می شنویم. در این پست تلاش می کنیم که مفهوم و محاسن و معایب آنرا بررسی کنیم.

در حقیقت Microservices روشی برای توسعه برنامه های کاربری است که در آن یک برنامه بزرگ و پیچیده به مجموعه ای از سرویس های کوچکتر و مستقل از یکدیگر تقسیم می شود. هر یک از سرویس ها هدف مستقلی را دنبال میکند و با استفاده از رابط های بسیار سبک و سریعی با سایر سرویس ها تعامل دارد، همچنین عموما از API ها با منبع HTTP در توسعه آن ها استفاده شده است. به طور مثال یک برنامه فروش یا حسابرسی را می توانیم با ساختارMicroservices به گونه ای توسعه داد که در آن یک سرویس مسئول احراز هویت باشد، سرویس دیگر مسئول نگهداری داده ها، سرویس دیگر انجام پردازش ها و به همین ترتیب در آینده نیز با توسعه سرویس های مستقلی میتوان آنرا به صورت کاملا ماژولار توسعه داد.

محاسن Microservice ها:

🔻 گسترش و توسعه آسان در مقایسه با روش های کلاسیک
🔻افزایش قابل توجه سرعت و چابکی در تولید
🔻مقیاس پذیری و انعطاف پذیری برنامه ها
🔻 قابلیت استفاده مجدد از سرویس ها در سایر پروژه ها
🔻 قابلیت استفاده تحت زیرساخت های مبتنی بر رایانش ابری
🔻قابلیت بالا در کار با تکنولوژی کانتینرها مانند #docker

در حالی که استفاده از Microservices مزایای قابل توجهی دارد اما از طرف دیگر با چالش هایی هم مواجه می شویم:

▫️ استفاده از تعداد زیادی جزء کوچک در عملکرد با یکدیگر این پتانسیل را دارد که ساختاری در پیش روی ما قرار دهد که رفع خطا یا بهبود عمکلرد کلی برنامه را با دشواری مواجه کند.
▫️ امکان بروز مشکل Latency زیاد است
▫️تست برنامه فرآیند ساده ای نخواهد بود