سیستم توزیع شده در علوم کامپیوتر چیست؟ در این مقاله آموزشی این مفهوم را به همراه مزایا و چالشهای آن توضیح خواهیم داد. با ما همراه باشید.
سیستم توزیع شده ، که به رایانش توزیع شده نیز معروف است ، سیستمی است که دارای اجزای متعددی بوده که روی ماشینهای مختلف قرار گرفتهاند و با یکدیگر ارتباط برقرار میکنند. (شبکه میشوند.) این دستگاهها فعالیتهایشان را طوری هماهنگ میکنند تا به عنوان یک سیستم واحد ، یکپارچه و منسجم برای کاربر نهایی به نظر برسند.
بررسی اجمالی
ماشینهایی که بخشی از یک سیستم توزیع شده هستند میتوانند رایانه ، سرورهای فیزیکی ، ماشینهای مجازی ، کانتینرها یا هر گره یا نود (node) دیگری باشند که بتوانند به شبکه متصل شوند ، حافظه محلی داشته باشند و با هم از طریق انتقال پیامها ارتباط برقرار کنند.
سیستم های توزیع شده به دو صورت کلی عمل میکنند:
۱. هر دستگاه برای یک هدف مشترک کار میکند و کاربر نهایی نتایج را به عنوان یک سیستم واحد و منسجم میبیند.
۲. هر دستگاه کاربر نهایی خود را دارد و سیستم توزیع شده کار اشتراکگذاری منابع و ارتباطات دستگاهها (گرهها) را انجام میدهد.
گره و یال در شبکه چیست؟
گره یا node هر دستگاهی در شبکه است که یا در وسط خطوط شبکه قرار دارد یا در انتهای آن. یال نیز خطوط ارتباطی میان گرهها یا دستگاهها هستند که مدیا یا رسانه نیز نامیده میشوند.
بیشتر بخوانید: توپولوژی شبکه چیست؟
اگرچه سیستمهای توزیع شده گاهی اوقات مبهم هستند ، اما به طور کلی دارای سه ویژگی اصلی هستند:
همه اجزا به طور همزمان کار میکنند ، ساعت جهانی واحدی ندارند و همه اجزا مستقل از یکدیگر هستند ، و در صورت خرابی بدون ایجاد مشکل برای سایر اجزا تعویض میشوند. (ویژگی چسبندگی حداقلی – loosly-coupling)
مزایا و چالشهای سیستمهای توزیع شده
شرکتها ، سازمانها و گروههای کاری به سه دلیل تصمیم میگیرند سیستمهای توزیع شده را پیادهسازی کنند:
مقیاسپذیری: از آنجا که رایانش و محاسبات کامپیوتری در هر گره مستقلاً صورت میگیرد ، افزودن گرهها و ایجاد عملکردهای اضافی در صورت نیاز آسان و ارزان و به صرفه است.
قابلیت اطمینان: اکثر سیستمهای توزیع شده درصد خطای پایینی دارند زیرا از صدها گره تشکیل شدهاند که با هم کار میکنند. اگر فقط یک دستگاه از کار بیفتد ، سیستم معمولاً دچار هیچگونه خرابی نمیشود. (چون از قابلیت افزونگی در دستگاهها یا گرههای دیگر استفاده میشود.)
عملکرد: سیستمهای توزیع شده بسیار کارآمد هستند زیرا میتوان حجم کار را تقسیم کرده و به چندین دستگاه تخصیص داد.
با این وجود ، سیستمهای توزیع شده بدون چالش نیستند. پیچیدگی در طراحی معماری سیستمها ، ساخت سیستم و خطایابی و رفع خطا برای ایجاد یک سیستم توزیع شده میتواند بسیار طولانی یا پرهزینه باشد.
در اینجا سه چالش دیگر وجود دارد که ممکن است با آنها مواجه شوید:
زمانبندی: یک سیستم توزیع شده باید تصمیم بگیرد که چه کارهایی ، چه زمانی و کجا باید انجام شود. زمانبندی محدودیتهایی دارد که در اثر وجود سختافزارهای کم یا بدون استفاده و همچنین وقوع اتفاقات غیر مترقبه در اجرا ایجاد میشوند.
تأخیر: هرچه سیستم شما توزیع گستردهتری داشته باشد ، ممکن است با تاخیر بیشتری در ارتباطات میان گرهها مواجه شوید. برای همین تیمها ، شرکتها و گروههای کاری وادار میشوند تا بین در دسترس بودن ، ثبات و به موقع بودن با هم هماهنگی ایجاد کنند.
مشاهدهپذیری: جمعآوری ، پردازش ، ارائه و نظارت بر معیارهای استفاده از سختافزار برای خوشههای بزرگ متشکل از دستگاههای توزیع شده یک چالش اساسی است.
نحوه کار سیستم توزیع شده چیست؟
از معماری سختافزاری و نرمافزاری برای حفظ و نگهداری سیستم توزیع شده استفاده میشود. همه چیز باید به هم متصل باشد: CPU ها از طریق شبکه و فرآیندها از طریق سیستم ارتباطی.
انواع سیستم های توزیع شده
چهار مدل معماری اصلی سیستمهای توزیع شده عبارتند از:
کلاینت-سرور: کلاینتها برای دریافت اطلاعات با سرور تماس میگیرند ، سپس آنها را قالببندی کرده و برای کاربر نهایی نمایش میدهند. کاربر نهایی همچنین میتواند تغییری از سمت کلاینت ایجاد کرده و آن را در سمت سرور مجدداً بارگذاری کند.
سه سطحی: اطلاعات کامپیوتر کلاینت در سطح میانی واسط ذخیره میشود. (به جای ذخیره شدن در خود کلاینت) این کار برای سادهسازی استقرار سیستم صورت میگیرد.
n سطحی: معمولاً زمانی استفاده میشود که یک برنامه یا سرور نیاز به ارسال درخواست به خدمات سیستمهای تجاری (و نه پایه) دیگر در شبکه داشته باشد.
حتما بخوانید: تفاوت سخت افزار پایه و تجاری
همتا به همتا: در این معماری ، از هیچ دستگاه اضافی برای ارائه خدمات یا مدیریت منابع استفاده نمیشود. مسئولیتها به طور مساوی بین ماشینهای موجود در سیستم ، به نام peers ، که میتوانند هر کدام به عنوان کلاینت یا سرور عمل کنند ، توزیع میشوند. هیچ گره (node) دیگر عمل پردازش و ذخیرهسازی را انجام نمیدهد.
نمونههای سیستم توزیع شده
سیستمهای بانکی الکترونیکی ، بازیهای آنلاین چند نفره و شبکههای حسگر از جمله این نمونهها هستند. همچنین اینترنت اشیا نیز یک سیستم توزیع شده است.
کاربرد سیستم توزیع شده چیست؟
سیستمهای توزیع شده در جاهایی که حجم زیادی از دادهها وجود دارند و پردازش آنها به وسیله یک سیستم دشوار است ، استفاده میشود. به ویژه در داده بزرگ (بیگ دیتا).
نکات کلیدی که باید به خاطر بسپارید
سیستمهای توزیع شده میتوانند شامل هر دستگاهی باشند که به شبکه متصل بشود ، حافظه محلی داشته باشد و از راه انتقال پیامها با سایر دستگاهها و گرهها ارتباط برقرار کند.
با توزیع تقاضا و حجم کار ، سیستمهای توزیع شده میتوانند تقاضاها و وظایف بیشتری را نسبت به یک سیستم واحد پشتیبانی کنند.
تفاوت رایانش توزیع شده و شبکه
رایانش توزیع شده به نوعی همان مفهوم شبکهسازی برای سیستمها است و برای برخی بسترهای کوچک مانند LAN کاربرد دارد. اما رایانش شبکهای یک پله بالاتر از مفهوم توزیع است.
در رایانش شبکهای هم ساختار توزیع شده وجود دارد و پایهها مشترکند ، اما:
۱. در رایانش شبکهای معمولا یک کامپیوتر سرور وجود دارد که به سایر گرهها از جمله کلاینتها خدمات میدهد.
۲. در رایانش شبکه هدف اصلی به اشتراک گذاشتن اطلاعات است اما در رایانش توزیع شده ، صرفاً تجمیع منابع پردازش مد نظر است و اینکه رایانههای متصل شده به هم ، یک کل واحد به نظر برسند.
در این نوشتار در مورد اینکه سیستم توزیع شده چیست صحبت کردیم و کارکردها و انواع آن را برشمردیم. از این که با ما همراه بودید سپاسگزاریم.
منابع
۱. رایانش توزیع شده چیست؟ – ترجمه از انگلیسی
این مقاله برای من مفید بود
1+ 1 نفر این مقاله را پسندیده