What is cloud computing?
Cloud computing is defined as the on-demand delivery of IT resources over the internet with a pay-as-you-go pricing model.
Instead of heavily investing in physical data centers, organizations can access computing resources as needed from a cloud provider like AWS.
Cloud Computing vs On-Prem Computing
This is a comparison between various cloud computing and on-prem computing aspects:
| Aspect | Cloud Computing | On-Prem Computing |
|---|---|---|
| Hardware Ownership | Cloud Provider, (e.g. AWS, Azure, etc.). | Organization. |
| Pricing Models | Elastic scale up/down and pay accordingly. | Fixed capacity. Scaling requires buying new hardware upfront, which is expensive. |
| Resposibility | The provider manages infrastructure maintenance. | The organization is responsible for all hardware and software management. |
| Flexibility | Wide range of services available on demand. | Limited to installed hardware/software. |
| Latency | Depends on the internet connectivity and cloud region. | Generally lower latency as resources are local. |
Which is more advantageous?
Depends on the needs. Often cloud computing is the way to go, but that may not always be the case.
Cloud computing models
Cloud computing consists of three primary models:
Infrastructure as a Service (IaaS)
Provides building blocks for cloud IT, such as virtual servers and networks.
- E.g. Amazon EC2.
Platform as a Service (PaaS)
Provides platforms for developers to build applications on, without having to manage the infrastructure.
- E.g. AWS Elastic Beanstalk.
Software as a Service (SaaS)
Provides fully managed software applications delivered over the internet.
- E.g. Amazon Chime, Gmail.