Cloud computing makes it possible to distribute a large number of adjustable framework resources and higher-level administrations via the Internet with minimal board effort. End-users benefit from a wide range of cloud-based services, including apps, hardware, and operating system software, all of which may be accessed in a consistent manner by the user. Cloud computing means that the user does not need to know how the cloud works or where the computer requirements are found. “Computing” service level agreements (SLAs) provide cloud providers complete control over all resources that their clients may actually make use of. In the cloud, virtualization technologies are supported, and the end user is able to deploy virtual resources at a low cost without the need for any infrastructure. This article examines several cloud computing resource allocation strategies, load balancing approaches, scheduling techniques, and admission control systems, as well as their pros and limitations.