Cloud entails an ever-expanding list of tools and techniques, but the key characteristics of cloud computing remain the same.
AWS was the first to popularize cloud computing as an alternative to on-premises infrastructure when it began selling computing resources and storage instances in 2006. Google and Microsoft followed soon after. Today, cloud computing extends from infrastructure to software-as-a-service (SaaS) models and everything in between, including AI, containers, serverless computing, databases, IoT, dedicated networking, analytics, business apps and much more.
Each subset has its own benefits and challenges, but several core cloud computing features underpin all of them. Explore these eight key characteristics of cloud computing that explain why it's the go-to destination for building and deploying modern applications.
1. On-demand self-service
AWS, Microsoft Azure, Google Cloud and other public cloud platforms make resources available to users at the click of a button or API call. With data centers all over the world, these vendors have vast amounts of compute and storage assets at the ready. This represents a radical departure for IT teams accustomed to an on-premises procurement process that can take months to complete.
Cloud computing's characteristic of self-service provisioning goes hand in hand with on-demand computing capabilities. Instead of waiting for new servers to be delivered to a private data center, developers can select the resources and tools they need -- typically through a cloud provider's self-service portal -- and build right away. An admin sets policies to limit what IT and development teams can run, but within those guardrails, employees have the freedom to build, test and deploy apps as they see fit.
2. Resource pooling
Public cloud providers rely on multi-tenant architectures to accommodate more users at the same time. Customers' workloads are abstracted from the hardware and underlying software, which serve multiple customers on the same host. Cloud providers increasingly rely on custom hardware and abstraction layers to improve security and speed users' access to resources.
3. Scalability and rapid elasticity
Resource pooling enables scalability for cloud providers and users, letting them add or remove compute, storage, networking and other assets as needed. This helps enterprise IT teams optimize their cloud-hosted workloads and avoid end-user bottlenecks. Clouds can scale vertically or horizontally, and service providers offer automation software to handle dynamic scaling for users.
Traditional on-premises architectures can't scale as easily. Typically, enterprises have to purchase servers and other infrastructure assets to plan for peak capacity. Those extra resources sit idle during lulls in activity.
While scalability usually describe longer-term cloud infrastructure plans, rapid elasticity is a short-term characteristic. When demand unexpectedly surges, properly configured cloud applications and services instantly and automatically add resources to handle the load. When the demand abates, services return to original resource levels.
4. Pay-per-use pricing
This cloud computing characteristic shifts IT spending from Capex to Opex as providers offer per-second billing. This model achieves economies of scale through reducing costs on a large scale and seeing an increase in efficiency. Though this can generally be seen as a positive, IT teams must be careful since their resource needs likely aren't static. VMs should be right-sized, turned off while not in use, or scaled down as conditions dictate. Otherwise, organizations waste money and can end up with sticker shock when the monthly bill arrives.
This pricing model was once the only way to pay for cloud. But vendors have since added various pricing plans that provide cheaper costs in exchange for longer-term commitments. This model is cost effective since customers only pay for what they use.
5. Measured service
Measuring cloud service usage is useful for both a cloud provider and its customers. The provider and the customer monitor and report on the use of resources and services, such as VMs, storage, processing and bandwidth. That data is used to calculate the customer's consumption of cloud resources and feeds into the pay-per-use model. The cloud provider, meanwhile, can better understand how customers utilize its resources and potentially improve the infrastructure and cloud computing services offered
6. Resiliency and availability
Cloud providers use several techniques to guard against downtime, such as minimizing regional dependencies to avoid single points of failure. Users can also extend their workloads across availability zones, which have redundant networks connecting multiple data centers in relatively close proximity. Some higher-level services automatically distribute workloads across availability zones.
Of course, these systems aren't foolproof. Outages occur and enterprises must have contingency plans in place. For some, that means extending workloads across isolated regions or even different platforms -- though that can come with a hefty price tag and increased complexity.
While many enterprises balked at migrating workloads because of security fears, those concerns have largely subsided, partly due to the benefits of the above characteristics of cloud computing. Cloud vendors employ some of the best security experts in the world and are generally better equipped to handle threats than most in-house IT teams. In fact, some of the biggest financial firms in the world say the cloud is a security asset.
However, this doesn't absolve users of their duties. Public cloud providers follow the shared-responsibility model. They tend to the security of the platform, and users handle their own apps that sit on top. Failure to fully grasp those delineations has led to high-profile exposures of sensitive corporate data in the past.
8. Broad network access
A big part of the cloud's utility is its ubiquity. Data can be uploaded and accessed from anywhere with an internet connection. Users can work from any location. The cloud is an attractive option for most enterprises that have a mix of operating systems, platforms and devices.
To preserve that broad network access, cloud providers monitor and ensure various metrics that reflect how customers access cloud resources and data: latency, access time, data throughput, etc. These factor into quality-of-service requirements and service-level agreements.
Editor's note: This article was republished to improve the reader experience.