cloud

Cloud Computing: From Fundamentals to Modern Cloud Architecture

Cloud Computing: From Fundamentals to Modern Cloud Architecture

By Shubhankar Tripathi • • 5 min read

Cloud computing has fundamentally changed the way applications are designed, deployed, and operated.

Instead of purchasing physical servers, installing operating systems, maintaining data centers, and planning infrastructure capacity months in advance, organizations can provision computing resources on demand and pay for what they actually use.

Whether you are building a small web application or a globally distributed enterprise platform, cloud computing provides the infrastructure and services needed to scale applications efficiently.

But cloud computing is much more than simply "running applications on someone else's servers."

It is an architectural approach built around on-demand infrastructure, automation, scalability, managed services, elasticity, and distributed systems.


What Is Cloud Computing?

Cloud computing is the delivery of computing resources over a network, typically the internet, on an on-demand basis.

These resources can include:

  • Compute

  • Storage

  • Databases

  • Networking

  • Security

  • Monitoring

  • Messaging

  • Analytics

  • Machine learning

  • Application platforms

Instead of owning and managing all infrastructure yourself, you can provision these capabilities from a cloud provider.

Popular cloud platforms include:

  • Amazon Web Services (AWS)

  • Microsoft Azure

  • Google Cloud Platform (GCP)

A simplified model looks like this:

                   Cloud Platform

                         |

        +----------------+----------------+

        |                |                |

      Compute          Storage         Database

        |                |                |

      EC2/VMs          S3/Blob          RDS

        |                |                |

        +----------------+----------------+

                         |

                    Application

                         |

                       Users


The application consumes infrastructure and managed services without necessarily requiring the organization to own the underlying physical hardware.


Why Did Cloud Computing Become Important?

Traditional infrastructure typically required organizations to purchase servers before they were needed.

Imagine an application that normally requires 10 servers but occasionally receives traffic requiring 100 servers.

With traditional infrastructure, you might purchase enough hardware for peak demand.

That means 90 servers could remain underutilized most of the time.

Cloud computing introduces a different model.

Traditional Infrastructure


Peak Capacity

|-----------------------------|

|                             |

|   Mostly unused capacity    |

|                             |

|-----------------------------|


Cloud Infrastructure


Normal Usage

|----------|


Traffic Spike

|-----------------------------|


Cloud platforms allow organizations to provision additional resources when demand increases and reduce them when demand falls.

This concept is known as elasticity.


Cloud Computing Characteristics

Several characteristics distinguish cloud computing from traditional infrastructure.

1. On-Demand Resources

Resources can be provisioned when they are required.

For example:

Developer

   |

   v

Cloud Console / CLI / API

   |

   v

Create Compute Instance

   |

   v

Instance Available


Infrastructure can often be created through APIs and automation rather than manually configuring physical machines.


2. Scalability

Scalability is the ability of a system to handle increasing workload.

There are two common approaches.

Vertical Scaling

Increase the capacity of an existing machine.

Before:


4 CPU

8 GB RAM


        ↓


After:


16 CPU

32 GB RAM


This is also called scaling up.

Horizontal Scaling

Add more machines.

            Load Balancer

                  |

        +---------+---------+

        |         |         |

       VM1       VM2       VM3


This is called scaling out.

Modern cloud-native applications often favor horizontal scaling because workloads can be distributed across multiple instances.


3. Elasticity

Scalability and elasticity are related but not identical.

Scalability means the system can handle increased workload.

Elasticity means resources can dynamically increase or decrease according to demand.

For example:

Low Traffic

    |

    v

  2 Instances

    |

Traffic increases

    |

    v

  5 Instances

    |

Traffic decreases

    |

    v

  2 Instances


Auto Scaling services can automate this process.


4. Pay-As-You-Go

Traditional infrastructure often requires significant upfront investment.

Cloud computing changes this into an operational consumption model.

Instead of:

Purchase Servers

       ↓

Install Hardware

       ↓

Maintain Data Center


you can use:

Provision Resources

       ↓

Run Application

       ↓

Pay for Consumption


However, cloud computing does not automatically mean lower costs.

Poorly designed cloud architectures can become extremely expensive.

This is why FinOps and cloud cost optimization are important parts of modern cloud engineering.


Cloud Service Models

Cloud services are commonly categorized into three major models:

  1. IaaS

  2. PaaS

  3. SaaS


1. Infrastructure as a Service — IaaS

With IaaS, the cloud provider supplies fundamental infrastructure such as:

  • Virtual machines

  • Networking

  • Storage

  • Virtual networks

The customer manages much of the operating system and application stack.

Example:

Application

     |

Runtime

     |

Operating System

     |

Virtual Machine

     |

Cloud Infrastructure


Examples include virtual machine services such as AWS EC2 and Azure Virtual Machines.

IaaS provides a high degree of control but also requires more operational responsibility.


2. Platform as a Service — PaaS

With PaaS, the cloud provider manages more of the underlying infrastructure and runtime environment.

The developer primarily focuses on the application.

Application

     |

Application Runtime

     |

Managed Platform

     |

Cloud Infrastructure


Examples include managed application platforms and serverless services.

The major advantage is reduced infrastructure management.


3. Software as a Service — SaaS

With SaaS, users consume a complete software application.

User

 |

 v

Application

 |

 v

Cloud Provider


The user typically does not manage:

  • Servers

  • Operating systems

  • Runtime

  • Infrastructure

Examples include cloud-based email, collaboration, CRM, and productivity applications.


Public, Private and Hybrid Cloud

Cloud environments can also be classified according to how infrastructure is deployed.

Public Cloud

Infrastructure is provided by a cloud provider and shared across customers through logically isolated environments.

Examples:

  • AWS

  • Azure

  • Google Cloud

Private Cloud

Cloud infrastructure is dedicated to a single organization.

This can provide greater control but generally requires more infrastructure management.

Hybrid Cloud

A hybrid architecture combines private infrastructure with public cloud services.

             Organization

                   |

        +----------+----------+

        |                     |

        v                     v

 Private Infrastructure   Public Cloud

        |                     |

        +----------+----------+

                   |

             Integrated Apps


Hybrid architectures are often used when organizations have existing data centers but want to gradually adopt cloud services.


Cloud Computing Architecture

A typical modern cloud application may contain several layers.

                      Users

                         |

                         v

                  DNS / CDN

                         |

                         v

                 Load Balancer

                         |

              +----------+----------+

              |                     |

              v                     v

        Application 1        Application 2

              |                     |

              +----------+----------+

                         |

                         v

                  API / Services

                         |

             +-----------+-----------+

             |                       |

             v                       v

        Database                  Cache

             |

             v

          Storage


Additional services such as messaging, monitoring, logging, identity, and security are normally integrated into the architecture.


Cloud Networking

Networking is one of the most important parts of cloud architecture.

A typical AWS, Azure, or GCP environment may contain:

  • Virtual networks

  • Subnets

  • Route tables

  • Internet gateways

  • NAT gateways

  • Firewalls

  • Load balancers

  • Private endpoints

A simplified architecture might look like:

                    Internet

                         |

                         v

                  Internet Gateway

                         |

                  Public Subnet

                         |

                   Load Balancer

                         |

              +----------+----------+

              |                     |

        Private Subnet        Private Subnet

              |                     |

          Application           Application

              |                     |

              +----------+----------+

                         |

                      Database


A common design principle is to keep databases and other sensitive services in private network segments rather than exposing them directly to the internet.


Cloud Storage

Cloud platforms provide different storage models for different workloads.

Object Storage

Used for:

  • Images

  • Videos

  • Backups

  • Data lakes

  • Documents

  • Logs

Examples:

  • Amazon S3

  • Azure Blob Storage

  • Google Cloud Storage

Block Storage

Typically attached to compute instances and used like a disk.

Useful for:

  • Operating systems

  • Application files

  • Databases

  • High-performance workloads

File Storage

Provides shared filesystem semantics.

Useful when multiple applications need access to the same filesystem.

Choosing the correct storage model is an architectural decision rather than simply a configuration choice.


Managed Databases

Cloud providers offer managed database services that reduce operational responsibilities.

Instead of manually managing:

Database Server

Operating System

Patching

Backups

Replication

Monitoring


a managed database service can handle many of these operational tasks.

Examples include:

  • Relational databases

  • NoSQL databases

  • Data warehouses

  • In-memory databases

  • Graph databases

The correct database depends on the application's access patterns, consistency requirements, scalability requirements, and workload characteristics.


Serverless Computing

Serverless computing allows developers to run application logic without managing traditional servers.

A simplified model:

Event

  |

  v

Function

  |

  v

Application Logic

  |

  v

Database / Storage / Queue


The cloud provider manages the underlying infrastructure.

Common use cases include:

  • API endpoints

  • Event processing

  • File processing

  • Scheduled jobs

  • Data pipelines

  • Lightweight automation

Serverless does not mean that servers don't exist.

It means that server management is abstracted away from the application developer.


Containers and Cloud Computing

Containers provide a consistent application packaging model.

Application

    +

Dependencies

    +

Runtime Configuration

        |

        v

    Container


Cloud platforms can run containers using managed services or container orchestration platforms such as Kubernetes.

A common architecture is:

                 Load Balancer

                       |

                       v

                 Kubernetes

                  Cluster

                       |

          +------------+------------+

          |            |            |

        Pod          Pod          Pod

          |            |            |

          +------------+------------+

                       |

                    Database


This approach is particularly useful for microservices and applications requiring flexible deployment and scaling.


Cloud Security

Security must be considered at every layer.

Important areas include:

  • Identity and Access Management

  • Encryption

  • Network security

  • Secrets management

  • Logging

  • Monitoring

  • Vulnerability management

  • Backup and disaster recovery

One of the most important principles is least privilege.

A service should receive only the permissions it actually requires.

For example:

Application

     |

     v

IAM Role

     |

     +---- Read specific S3 bucket

     |

     +---- Write application logs


Avoid giving an application unrestricted administrative permissions unless there is a legitimate requirement.


High Availability

Cloud applications should be designed to tolerate failures.

Instead of relying on a single server:

User

 |

 v

Server


a highly available architecture might use multiple availability zones:

                 Load Balancer

                       |

             +---------+---------+

             |                   |

             v                   v

        Availability Zone A  Availability Zone B

             |                   |

          Server 1             Server 2

             |                   |

             +---------+---------+

                       |

                    Database


If one infrastructure component fails, traffic can potentially be redirected to healthy resources.


Disaster Recovery

High availability and disaster recovery are related but different concepts.

High availability focuses on continuing operations during failures.

Disaster recovery focuses on restoring services after a major disruption.

Important disaster recovery concepts include:

  • Backups

  • Replication

  • Recovery Point Objective (RPO)

  • Recovery Time Objective (RTO)

  • Cross-region architectures

  • Disaster recovery testing

A backup strategy is useful only if the organization can actually restore the application and its data when required.


Cloud Cost Optimization

Cloud architecture should always consider cost.

Common optimization techniques include:

  • Right-sizing compute resources

  • Auto Scaling

  • Using appropriate storage tiers

  • Removing unused resources

  • Monitoring data-transfer costs

  • Using reserved or committed capacity where appropriate

  • Scheduling non-production environments

  • Monitoring database utilization

  • Applying lifecycle policies to object storage

A useful mindset is:

Don't optimize for the lowest infrastructure cost; optimize for the best cost-to-performance ratio that meets the required reliability and security objectives.


Cloud-Native Architecture

Cloud-native applications typically embrace:

  • Containers

  • Microservices

  • APIs

  • Automation

  • Infrastructure as Code

  • CI/CD

  • Observability

  • Managed services

  • Elastic scaling

A modern architecture may look like:

                        Users

                           |

                           v

                     CDN / WAF

                           |

                           v

                    Load Balancer

                           |

                    API Gateway

                           |

             +-------------+-------------+

             |             |             |

          Service A     Service B     Service C

             |             |             |

             +-------------+-------------+

                           |

                    Message Broker

                           |

             +-------------+-------------+

             |                           |

          Database                    Data Lake

                                         |

                                         v

                                   Data Warehouse

                                         |

                                         v

                                      BI / AI


This architecture allows organizations to build systems that can scale independently and integrate operational workloads with analytics and AI platforms.


Cloud Computing and Data Engineering

Cloud computing has also transformed modern data engineering.

A typical cloud data platform may look like:

                Data Sources

                      |

          +-----------+-----------+

          |                       |

        Batch                  Streaming

          |                       |

          v                       v

       Object Storage          Kafka

          |                       |

          +-----------+-----------+

                      |

                 Data Processing

                      |

              Spark / Glue / ETL

                      |

                      v

                 Data Warehouse

                      |

             +--------+--------+

             |                 |

            BI             Machine Learning


This architecture separates data ingestion, processing, storage, analytics, and consumption.

Cloud platforms make it possible to scale each layer independently according to workload requirements.


Final Thoughts

Cloud computing is not simply about moving servers from a company data center to AWS, Azure, or Google Cloud.

The real transformation is architectural.

Instead of thinking primarily about physical infrastructure, cloud engineers think about:

Services → Automation → Scalability → Security → Reliability → Cost

The most effective cloud architectures use the right abstraction for the workload.

Sometimes that means a virtual machine.

Sometimes it means containers.

Sometimes serverless is the better choice.

And sometimes a managed service can eliminate an entire category of operational work.

The key is not to use every cloud service available.

The key is to understand why a service exists, what problem it solves, and when it should—or should not—be used.