رایانش ابری منابع پردازشی، حافظه، ذخیره‌سازی و شبکه را به‌صورت سرویس در اختیار کاربران قرار می‌دهد. اما صرف وجود منابع کافی به معنی عملکرد مناسب نیست. سامانه باید تصمیم بگیرد هر وظیفه در چه زمان و روی کدام ماشین مجازی اجرا شود. این تصمیم‌گیری همان زمان‌بندی وظایف است.

اجزای اصلی مسئله

در ساده‌ترین مدل، مجموعه‌ای از وظایف و مجموعه‌ای از منابع داریم. هر وظیفه ممکن است طول پردازشی، حافظه موردنیاز، مهلت انجام، اولویت و محدودیت امنیتی متفاوتی داشته باشد. منابع نیز از نظر قدرت پردازنده، قیمت، انرژی مصرفی و میزان بار یکسان نیستند. زمان‌بند باید نگاشتی بین این دو مجموعه ایجاد کند.

شاخص‌های کلیدی

Makespan زمان پایان آخرین وظیفه است و نشان می‌دهد کل بار کاری چه مدت طول کشیده است. Response Time مدت انتظار یک درخواست تا دریافت پاسخ را اندازه می‌گیرد. Throughput تعداد وظایف تکمیل‌شده در واحد زمان است. Cost هزینه استفاده از ماشین‌های مجازی، ذخیره‌سازی و شبکه را محاسبه می‌کند. Energy Consumption نیز برای مراکز داده بزرگ و زیرساخت‌های سبز اهمیت دارد.

چرا یک معیار کافی نیست؟

انتخاب سریع‌ترین ماشین برای همه کارها ممکن است makespan را کاهش دهد، اما هزینه و مصرف انرژی را بالا ببرد. ارزان‌ترین منبع نیز ممکن است زمان پاسخ نامناسبی داشته باشد. به همین دلیل مسئله واقعی معمولاً چندهدفه است و باید بین معیارهای متعارض تعادل برقرار شود.

انواع روش‌های زمان‌بندی

روش‌های ساده مانند First Come First Served و Round Robin پیاده‌سازی آسانی دارند، اما شرایط پویا و ناهمگونی منابع را به‌خوبی مدیریت نمی‌کنند. روش‌های ابتکاری مانند Min-Min و Max-Min از برآورد زمان تکمیل استفاده می‌کنند. الگوریتم‌های فراابتکاری مانند GA، PSO، ACO و Firefly برای جست‌وجوی فضای بزرگ جواب مناسب‌اند. روش‌های یادگیری تقویتی نیز می‌توانند سیاست زمان‌بندی را با تغییر بار کاری سازگار کنند.

چالش‌های عملی

در محیط واقعی، مدت اجرای وظیفه همیشه دقیق نیست، ماشین‌ها ممکن است از دسترس خارج شوند، شبکه نوسان دارد و درخواست‌ها به‌صورت لحظه‌ای وارد می‌شوند. زمان‌بند خوب باید مقیاس‌پذیر، مقاوم در برابر خطا، قابل توضیح و دارای سربار محاسباتی کنترل‌شده باشد.

جمع‌بندی

زمان‌بندی وظایف قلب مدیریت منابع ابری است. کیفیت این بخش مستقیماً بر سرعت سرویس، هزینه زیرساخت، رضایت کاربر و مصرف انرژی اثر می‌گذارد. برای طراحی یک راهکار مناسب باید ابتدا اهداف کسب‌وکار و محدودیت‌های سامانه مشخص شوند و سپس الگوریتمی انتخاب شود که در شرایط واقعی قابل اجرا باشد، نه فقط در سناریوی آزمایشگاهی.