سیستم های توزیع شده Distributed Systems
مقدمه ای بر سیستم های توزیع شده:
عمومی ترین دسته بندی که معمولا کاربران عادی از شبکه های کامپیوتری می دانند عبارت است از LAN , WAN , MAN و اینترنت را هم جزء شبکه های کامپیوتری در نظر میگیرند. به ظاهر اینترنت هم نوعی شبکه کامپیوتری است ولی در باطن در دسته بندی دیگری قرار می گیرد که با عنوان سیستم های توزیع شده یا Distributed Systems معرفی می شود.
سیستم توزیع شده چیست ؟
در ساده ترین تعریف، سیستم توزیع شده کلکسیونی از کامپیوترهای مستقل است که از دیدگاه کاربران مثل یک سیستم منسجم عمل می کند .
تفاوت سیستم های توزیع شده و شبکه های کامپیوتری در چیست ؟
یک سیستم توزیع شده مجموع ای است از چندین کامپیوتر مستقل که کاربر آن را به شکل یک سیستم واحد و متجانس می بیند. در این سیستمها معمولا یک لایه نرم افزاری {روی سیستم عامل} به نام میان افزار middleware است که مدل مورد نظر را پیاده سازی می کند. وب نمونه ای از یک سیستم توزیع شده است، که در آن همه چیز از دیدگاه کاربر یک سند {صفحه وب} به نظر می رسد.
در شبکه های کامپیوتری این تجانس، مدل و نرم افزار وجود ندارد.کاربران به طور مستقیم با کامیپوترها در تماسند و هیچ کوششی برای ایجاد تجانس بین آنها صورت نمی گیرد. کاربر به روشنی تفاوت های نرم افزاری و سخت افزاری کامپیوترها را می بینند.
در حقیقت، یک سیستم توزیع شده نرم افزاریست که روی شبکه کار می کند و تجانس و شفافیت آن توسط این نرم افزار تعیین می شود. به همین دلیل تفاوت سیستم توزیع شده با یک شبکه کامپیوتری، بیشتر در نرم افزار به ویژه سیستم عامل نهفته است تا سخت افزار.
با این همه، شباهت های زیادی بین این دو وجود دارد. مثلا سیستم های توزیع شده و شبکهها هردو به انتقال فایل نیاز دارند. تفاوت در این است که این کار را چه کسی انجام می دهد، سیستم یا کاربر!
انواع سیستم های توزیع شده
- سیستمهای محاسباتی توزیع شده .
- سیستمهای اطلاعاتی توزیع شده .
- سیستمهای متفرق توزیع شده .
سیستم های محاسباتی توزیع شده
سیستم های محاسباتی توزیع شده دسته مهمی از سیستم های توزیع شده هستند برای کارهای محاسباتی با کارایی بالا به کار می روند .این سیستمها به دو گروه تقسیم می شوند
- محاسبات خوشه ای {Cluster Computing}
- محاسبات شبکه ای {Grid Computing}
سیستم های محاسبات خوشه ای
در محاسبات خوشه ای سخت افزار شامل مجموعه ای از Pcها یا ایستگاه های کاری مشابه است که از طریق شبکه محلی پرسرعت به هم متصل می شوند، علاوه بر این هر گره سیستم عامل یکسانی را اجرا می کنند.
سیستم های محاسبات شبکه ای
این گروه شامل سیستم های توزیع شده ای هستند که اغلب به صورت فدراسیونی از سیستم های کامپیوتری ساخته می شوند که هر سیستم ممکن است در دامنه مدیریتی مختلفی واقع شود، بر حسب نوع سخت افزار، نرم افزار و فن آوری شبکه فرق کند.
زیر شاخه ها:
باید بگم که یکی از وسیع ترین زمینهها در علم کامپیوتر سیستم های توزیع شده هست اما مهمترین زیر شاخه هارو عنوان میکنم:
Cloud computing and virtualization: _(
موضوع مورد علاقه من)
رایانش ابری (به انگلیسی: Cloud Computing) مدل رایانشی بر پایهٔ شبکههای بزرگ کامپیوتری مانند اینترنت است که الگویی تازه برای عرضه، مصرف و تحویل سرویسهای فناوری اطلاعات (شامل سخت افزار، نرم افزار، اطلاعات، و سایر منابع اشتراکی رایانشی) با به کارگیری اینترنت ارائه میکند.
Parallel and distributed operating systems :
رایانش توزیعشده یا توزیعیافته به دستهای از محاسبات رایانهای اطلاق میشود که در آن دو، یا معمولاً چند کامپیوتر از طریق یک شبکه رایانهای به هم متصل شده و با استفاده از یک الگوریتم موازی بار محاسباتی مابین آنها توزیع میشود
Grid Computing :
این مبحث، تکنولوژی است که به کمک آن می توان محاسبات سنگین را بر روی یک سری کامپیوتر Cluster شده، انجام داد. در این حالت کاربر درخواست خود را به ابزار می دهد، اما از اینکه این درخواست در کدام سیستم مورد پردازش قرار می گیرد و چگونه جواب آن تهیه و ارسال می گردد بی خبر خواهد شد. به عبارت دیگر کاربر درخواست خود را میدهد، درخواست توسط یکی از سیستمهای کلاستر شده که معلوم نیست کدام است انجام می گردد و جواب برای کاربر ارسال می گردد.
Wireless and ad-hoc networks:
شبکه های بی سیم (Wireless) یکی از تکنولوژی های جذابی هستند که توانسته اند توجه بسیاری را بسوی خود جلب نمایند و عده ای را نیز مسحور خود نموده اند. هرچند این تکنولوژی جذابیت و موارد کاربرد بالایی دارد ولی مهمترین مرحله که تعیین کننده میزان رضایت از آن را بدنبال خواهد داشت ارزیابی نیازها و توقعات و مقایسه آن با امکانات و قابلیت های این تکنولوژی است. مهمترین مزیت شبکه های بی سیم، همانطور که از نام آن نیز پیداست، عدم نیاز به سیم کشی است. در شبکه های بی سیم کاربران می توانند در هر کجای ساختمان به شبکه متصل شوند. در شبکه های سیمی برای هر کامپیوتر نیاز به یک کابل است. بوسیله شبکه های بی سیم می توان همانند تمام شبکه های دیگر منابع شبکه (فایل ها، پرینتر، اینترنت و غیره) را به اشتراک گذاشت
Distributed Algorithms :
این مبحث مربوط به الگوریتم هایی هست که در سیستم های توزیع شده کار میکنند که هر الگوریتم باید برای کار در محیط توزیع شده شرایطی رو داشته باشه به عنوان مثال میشه به الگوریتم های توزیع شده اشاره کرد
Distributed databases
Distributed objects and middleware systems
Distributed multimedia systems
و...