Cloud computing is a broad term with a lot of different meanings. Initially, the term cloud referred to a layer of abstraction that the architecture shouldn't be too worried about. This could, for example, mean servers and network infrastructure managed by a dedicated operations team. Later, service providers started applying the term cloud computing to their own products that abstracted the underlying infrastructure with all its complexities. Instead of having to configure each piece of infrastructure individually, it was possible to use a simple Application Programming Interface (API) to set up all the necessary resources.
Nowadays, cloud computing has grown to include many novel approaches to application architecture. It may consist of the following:
- Managed services, such as databases, cache layers, and message queues
- Scalable workload orchestration
- Container deployment and orchestration platforms
- Serverless computing platforms
The most important thing...