Cloud computing is a developing technology that allows users to access data, software, and IT services. Cloud systems are characterized by the uncertainty of the resources availability. For that reason, its performance is greatly affected by the applied scheduling and allocation algorithm used to map submitted tasks to resources. This paper introduces a heuristic approach that combines ant colony and priority-aware schema to achieve task scheduling and resource allocation in cloud computing environments. The algorithm provides three prioritized levels of quality of services to be employed by users per their demand. A level's priorities dynamically affect the way tasks are distributed in the system. The resources are allocated using a modified version of ant colony optimization. Results show that the proposed algorithm improves the performance of the system by minimizing makespan, decreasing the degree of imbalance between virtual machines, and enhancing the cloud's quality of service by achieving user-priority goals.
展开▼