ورودثبت‌ نام

تفاوت 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

مطالب مرتبط

دیدگاه کاربران

هنوز دیدگاهی ثبت نشده است.

شما می‌توانید درباره این مقاله، دیدگاه خود را ثبت کنید.