اخبار، مطالب و رویدادهای مرتبط با توسعه نرم افزار رادکام

تفاوت Docker و VM

Docker VS VM

همان طور که قبلا نیز گفته شد با استفاده از تکنولوژی Docker می توان  همه برنامه هایی که در بسترهای متفاوت توسعه داده شده است و برای اجرا نیازمند منابع گوناگون هستند را بر روی یک Server قرار داده و از آن ها استفاده نمود. برای این کار لازم است که برنامه ها را به صورت Containerهایی ایجاد نموده و در صورت نیاز آن ها را استفاده نمود. به این ترتیب برای مثال برنامه هایی که تحت ویندوز  و لینوکس اجرا می شوند هر دو می توانند روی یک Server قرار گیرند.

این که بتوان برنامه های مختلف را روی یک Server قرار داد و آن ها را اجرا نمود توسط ماشین مجازی نیز قابل انجام است. به این صورت که می توان بر روی یک Server ماشین های مجازی مختلفی ایجاد نمود و روی هر کدام از آن ها سیستم عامل و نرم افزارهای مجزایی را نصب نمود. به این ترتیب برای مثال برنامه هایی که تحت ویندوز قابل اجرا هستند را روی ماشین ویندوزی و برنامه هایی که تحت لینوکس اجرا می شوند را روی ماشین لینوکسی قرار داد.

تفاوت Docker و VM

اما تفاوت استفاده از Docker و VM در چیست؟

شکل زیر شمایی از Server و منابع آن در هر دو تکنولوژی را نمایش می دهد.

Docker VS VM

طبق آن چه در شکل مشاهده می نمایید:

هنگام استفاده از ماشین مجازی برای هر کدام از ماشین های مجازی باید سیستم عامل مجزایی نصب شود که این مستلزم منابع بیشتر نرم افزاری و سخت افزاری بوده و همچنین نگهداری آن ها نیز مشکل تر خواهد بود. اما در Docker نیازی به نصب سیستم عامل مجزا وجود ندارد و تنها با قرار دادن Containerهای مختلف بر روی ماشین قادر به اجرای برنامه ها خواهیم بود.

در ماشین های مجازی منابع سخت افزاری و نرم افزاری Server بین همه ماشین ها تقسیم می شود و در این صورت ممکن است در زمانی که یک ماشین منایع بلااستفاده داشته باشد، ماشین دیگری نیاز به منابع بیشتری داشته باشد و با کمبود منابع مواجه شده و از سرویس دهی خارج شود. اما در Docker تقسیم بندی ثابتی بین منابع انجام نشده است و هر برنامه به کل منابع Server دسترسی داشته و بسته به نیاز خود در هر زمان منابع را مورد استفاده قرار می دهد. در این صورت امکان سرویس دهی بهتر خواهد بود.

*منابع: http://www.docker.com

پست های مرتبط

نام را وارد کنید
تعداد کاراکتر باقیمانده: 1000
نظر خود را وارد کنید