برنامه مجازی یا Virtual APP چیست؟

ظهور فناوری مجازی‌سازی، تغییرات انقلابی در دنیای فناوری‌اطلاعات به وجود آورده است. بسیاری از مؤلفه‌های IT از سرورها گرفته تا شبکه‌ها، اکنون مجازی شده‌اند.همچنین با تسلط گوشی‌های هوشمند بر دنیای فناوری‌اطلاعات، Virtual App و Application Virtualization جدیدترین کلمات کلیدی صنعت IT به شمار می‌روند.در یک محیط سنتی فناوری‌اطلاعات، برنامه‌ها به صورت محلی روی هر سیستم نصب می‌شوند. هنگام نصب برنامه، سیستم اطلاعات ویژه‌ای را در مکان‌هایی خاص می‌نویسد.به عنوان مثال، رجیستری ویندوز با تنظیمات برنامه به‌روز شده و پوشه System32 با فایل‌های DLL مربوط به آن برنامه به‌روز می‌شود. اما دو اشکال عمده در این نوع پیکربندی وجود دارد:اول اینکه نصب برنامه‌ها بر روی هزاران سیستم و پیگیری اطلاعاتشان برای ادمین برنامه بسیار خسته‌کننده است. علاوه بر این، به‌روزرسانی‌ها و وصله‌های امنیتی (Security Patches) باید به صورت منظم انجام شوند.مشکل دوم این است که گاهی فایل‌های DLL رونویسی می‌شوند و این امر منجر به تداخل (Conflict) برنامه‌ها می‌شود. انتشار یک برنامه مجازی (Virtual App) ضمن بهبود چشمگیر عملکرد شبکه، به رفع این موارد می‌پردازد.مروری بر برنامه‌های مجازیمجازی‌سازی برنامه (Application Virtualization) یک روش فناوری است که در آن برنامه از سیستم‌عامل اصلی خود جدا شده و به یک محیط ایزوله در سیستم هدف منتقل می‌شود. با این تفاوت که بر روی سرور اجرا می‌شود.در این روش کلیدها و فایل‌های رجیستری در یک مکان ایزوله نوشته شده که هنگام اجرای برنامه، از آن مکان بازیابی می‌شوند. هنگامی که از (Remote Desktop Services) RDS برای انتشار برنامه‌ها استفاده می‌شود، برنامه واقعی روی سرور مرکزی اجرا شده و رابط کاربری از طریق یک کلاینت (Remote Desktop Protocol) RDP به سیستم کاربر ارائه می‌شود.سیستم کاربر، کلیدهای کیبورد و کلیک‌های ماوس را به سرور ارسال کرده و به‌روز رسانی‌های تصویر برنامه مجازی را دریافت می‌کند.مدل‌های دیگری از مجازی‌سازی برنامه نیز وجود دارد. به عنوان مثال، مجازی‌سازی دسکتاپ (Desktop Virtualization) که از راه دور یک دسکتاپ کامل را به کاربران تحویل می‌دهد.زیرساخت دسکتاپ مجازی یا Virtual Desktop Infrastructure یا به اختصار VDI مناسب‌ترین راه برای سازمان‌هایی است که دفاتر مجازی را اداره می‌کنند و یا کارمندان دورکار دارند.پخش برنامه (Application Streaming) شکل دیگری از مجازی‌سازی است که در آن تنها بخش‌هایی از کد برنامه، تنظیمات و داده‌ها در هنگام نیاز تحویل داده می‌شود. مجازی‌سازی برنامه مزایای شگفت‌انگیزی برای سازمان‌ها دارد:برای مثال هزینه‌های سخت‌افزاری فناوری‌اطلاعات را کاهش می‌دهد، مدیریت IT را ساده می‌کند و عملکرد شبکه را به طور قابل توجهی بهبود می‌بخشد. از همه مهم‌تر، مجازی‌سازی برنامه‌ها به کسب و کارها اجازه می‌دهد تا برنامه‌های ویندوز را برای دستگاه‌های غیر ویندوزی مانند iOS ، Android ،Mac یا Linux ارائه دهند.نقش Application Delivery Controllers (ADCs)کنترلرهای تحویل برنامه (ADCs) معمولاً برای مدیریت ارتباط بین سرورها و سیستم‌های مشتری با نظر به تحویل برنامه مجازی، استفاده می‌شوند.مؤلفه ‌ADC، به عنوان متعادل‌کننده بارِ شبکه عمل می‌کند و جریان داده‌ها بین سرور و دستگاه مشتری را هدایت می‌کند.کنترلرهای تحویل برنامه (ADCs) در پشت فایروال و در جلوی سرورهای برنامه کاربردی قرار گرفته و باعث سرعت بخشیدن به عملکرد برنامه، برقراری اتصال و ایجاد منابع در صورت تقاضا می‌شوند. ADCها می‌توانند یک دستگاه شبکه فیزیکی یا یک نرم‌افزار باشند.چالش‌های مجازی‌سازی برنامه‌هامجازی‌سازی برنامه با مجموعه چالش‌های خاص خود همراه است. موارد زیر برخی از این چالش‌ها هستند:راه‌اندازی پیچیده‌تر: برنامه‌های مجازی ممکن است پیچیده‌تر از برنامه‌های دسکتاپ سنتی باشند. در بعضی موارد، ممکن است لازم باشد کارمندان دارای مهارت‌های ویژه را برای اجرای صحیح مجازی‌سازی برنامه در سازمان خود استخدام کنید. فرآیند پرینت کردن اسناد حوزه دیگری است که توسط برنامه مجازی بی‌جهت پیچیده شده است.عدم پشتیبانی از برنامه‌های کلاسیک و قدیمی: مجازی‌سازی برنامه ممکن است برای برنامه‌های کلاسیک و قدیمی، از جمله برنامه‌های 32 بیتی، امکان‌پذیر نباشد. در این موارد، ممکن است مجبور شوید سرورهای جداگانه‌ای را برای رسیدگی به این برنامه‌ها فراهم کنید و پیچیدگی بیشتری به محیط IT خود اضافه کنید. علاوه بر این، برخی از برنامه‌ها ممکن است به هیچ‌ وجه برای مجازی‌سازی مناسب نباشند.هزینه‌های پیش‌بینی نشده: مجازی‌سازی برنامه ممکن است مجموعه‌ای از نیازهای محاسباتی و ذخیره‌سازی را به همراه داشته باشد. این امر به این دلیل است که برنامه‌های مجازی نیازهای ذخیره‌سازی عجیب و غریب خود را دارند و همچنین ممکن است عملیات I/O آنها فشرده‌تر باشد. برای جلوگیری از مشکلات عملکردی، ممکن است شما نیاز به افزودن فضای ذخیره و پهنای باند شبکه بیشتری داشته باشید.مزایای مجازی‌سازی برنامه‌هابرنامه‌های مجازی مزایای مختلفی دارند که برخی از آنها عبارتند از:مدیریت آسان‌تر و به‌روز رسانی راحت‌تر به معنای هزینه پشتیبانی پایین‌تر: مدیران فقط یک بار باید برنامه مجازی را روی سرور نصب کنند. بنابراین، پچ‌ کردن و به‌روز رسانی برنامه‌های مجازی ساده‌تر است. از آنجا که پچ کردن در پس‌زمینه رخ می‌دهد، کاربران نیز مشکلی نخواهند داشت. یکی دیگر از زمینه‌هایی که مدیریت آن در برنامه‌های مجازی راحت‌تر است، دسترسی کاربران است.کوچک‌تر بودن اندازه برنامه‌ها: از آنجا که مجازی‌سازی، برنامه‌ها را از سیستم‌عامل دستگاه جدا می‌کند، برنامه‌های مجازی ممکن است در مقایسه با برنامه‌های رایانه‌های سنتی کوچک‌تر باشند.کاهش هزینه‌های صدور مجوز: از آنجا که برنامه‌های مجازی به صورت تقاضا و عرضه اجرا می‌شوند، هزینه‌های مجوز نرم‌افزار به حداقل می‌رسد. با بهره‌گیری از قابلیت‌های مدیریت متمرکز، استفاده از نرم‌افزار می‌تواند به سرعت مورد تجزیه و تحلیل قرار گرفته و به بخش‌های مسئول این امکان را بدهد که تصمیم بگیرند در چه زمان و مکانی تعداد مجوزها را افزایش یا کاهش دهند.کاهش هزینه‌های سخت‌افزاری: از آنجا که اجرای برنامه‌های مجازی از هر جایی امکان‌پذیر است، دیگر نیازی به خرید دستگاه‌های اختصاصی برای برنامه‌های خاص ندارید. همچنین بدون نیاز به سرورهای قدرتمند می‌توانید از منابع دستگاه‌های جداگانه استفاده کنید.