Cloud Computing
Cloud computing is a technology model that delivers computing services—including servers, storage, databases, networking, software, analytics, and intelligence—over the internet ("the cloud") rather than from local servers or personal devices. Instead of owning and maintaining physical hardware and infrastructure, users can access technology resources on-demand from cloud service providers, typically paying only for what they use.
Overview
editCloud computing represents a fundamental shift in how computing resources are delivered and consumed. Rather than purchasing, installing, and maintaining hardware and software locally, organizations and individuals can access these resources remotely through the internet. This model offers flexibility, scalability, and cost efficiency, as users can rapidly scale resources up or down based on their needs without significant capital investment in physical infrastructure.
The term "cloud" is used as a metaphor for the internet, based on how it is often depicted in network diagrams. Cloud computing abstracts the underlying infrastructure, allowing users to focus on their applications and data rather than managing servers, storage, and networking equipment.
History
editThe concept of cloud computing has evolved over several decades:
- 1960s - The idea of computing as a utility was proposed by computer scientist John McCarthy, who suggested that computing could be organized as a public utility
- 1990s - Telecommunications companies began offering Virtual Private Network (VPN) services with comparable quality at lower cost by switching traffic dynamically
- 1999 - Salesforce.com pioneered the delivery of enterprise applications via a website, demonstrating software-as-a-service (SaaS)
- 2002 - Amazon launched Amazon Web Services (AWS), initially offering storage and computation services
- 2006 - Amazon introduced Elastic Compute Cloud (EC2), marking a significant milestone in commercial cloud computing
- 2008 - Google launched Google App Engine, and Microsoft introduced Azure
- 2010s - Cloud computing became mainstream with widespread adoption across industries
Essential Characteristics
editThe National Institute of Standards and Technology (NIST) defines five essential characteristics of cloud computing:
On-Demand Self-Service
editUsers can provision computing resources automatically without requiring human interaction with service providers. This includes the ability to deploy servers, storage, and applications through automated interfaces.
Broad Network Access
editCloud services are available over the network and accessed through standard mechanisms that support use from various platforms including mobile phones, tablets, laptops, and workstations.
Resource Pooling
editComputing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to demand. Users generally have no control or knowledge over the exact location of resources but may be able to specify location at a higher level of abstraction (such as country, state, or datacenter).
Rapid Elasticity
editResources can be elastically provisioned and released to scale rapidly outward and inward based on demand. To users, the available resources often appear unlimited and can be purchased in any quantity at any time.
Measured Service
editCloud systems automatically control and optimize resource use by leveraging metering capabilities at an appropriate level of abstraction. Resource usage can be monitored, controlled, and reported, providing transparency for both providers and consumers.
Service Models
editCloud computing is typically categorized into three primary service models:
Infrastructure as a Service (IaaS)
editIaaS provides fundamental computing resources including virtual machines, storage, networks, and operating systems. Users have control over operating systems, storage, and deployed applications, but do not manage or control the underlying cloud infrastructure. Examples include Amazon EC2, Google Compute Engine, and Microsoft Azure Virtual Machines.
Key Features:
- Virtual machine instances
- Storage services (block storage, object storage)
- Networking components (virtual networks, load balancers)
- Pay-per-use pricing model
- Full control over operating systems and applications
Platform as a Service (PaaS)
editPaaS provides a platform allowing customers to develop, run, and manage applications without dealing with the underlying infrastructure. Users control the deployed applications and possibly configuration settings, but not the servers, operating systems, or network. Examples include Google App Engine, Heroku, and AWS Elastic Beanstalk.
Key Features:
- Development frameworks and tools
- Database management systems
- Middleware services
- Application hosting environment
- Automatic scaling and load balancing
Software as a Service (SaaS)
editSaaS delivers software applications over the internet on a subscription basis. Users access applications through web browsers without managing underlying infrastructure or platforms. Examples include Google Workspace, Microsoft 365, Salesforce, and Dropbox.
Key Features:
- Ready-to-use applications
- Subscription-based pricing
- Automatic updates and maintenance
- Multi-tenant architecture
- Accessible from any device with internet connection
Deployment Models
editPublic Cloud
editCloud infrastructure is provisioned for open use by the general public. It is owned, managed, and operated by a business, academic, or government organization, or a combination thereof. Public clouds offer the greatest level of efficiency in shared resources but may have limitations in customization and control. Major public cloud providers include Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), and IBM Cloud.
Private Cloud
editCloud infrastructure is provisioned for exclusive use by a single organization comprising multiple consumers. It may be owned, managed, and operated by the organization, a third party, or a combination, and may exist on or off premises. Private clouds offer greater control, security, and customization but require more management and investment.
Hybrid Cloud
editA composition of two or more distinct cloud infrastructures (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology enabling data and application portability. Organizations use hybrid clouds to keep sensitive data in private clouds while leveraging public cloud resources for less critical operations or to handle peak loads.
Multi-Cloud
editThe use of multiple cloud computing services from different providers in a single architecture. This strategy avoids vendor lock-in, improves redundancy, and allows organizations to choose the best services from each provider. Multi-cloud differs from hybrid cloud in that it typically involves multiple public clouds rather than a mix of public and private.
Community Cloud
editCloud infrastructure is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be owned, managed, and operated by one or more organizations in the community, a third party, or a combination.
Benefits
editCost Efficiency
editCloud computing eliminates the capital expense of purchasing hardware and software and reduces costs for running on-site datacenters, including servers, electricity, cooling, and IT staff for infrastructure management.
Scalability and Elasticity
editCloud resources can be scaled up or down quickly to meet changing demands, allowing organizations to handle traffic spikes without over-provisioning resources during normal periods.
Performance
editMajor cloud providers operate worldwide networks of datacenters with the latest computing hardware, offering faster performance, reduced network latency, and economies of scale.
Speed and Agility
editCloud services can be provisioned in minutes rather than weeks or months, allowing organizations to test new ideas and deploy applications rapidly.
Global Reach
editCloud providers have datacenters around the world, enabling organizations to deploy applications close to users regardless of location, reducing latency and improving user experience.
Reliability
editCloud computing makes data backup, disaster recovery, and business continuity easier and less expensive by mirroring data at multiple sites on the provider's network.
Security
editMajor cloud providers offer a broad set of policies, technologies, and controls that strengthen security posture overall, though security remains a shared responsibility between provider and customer.
Challenges and Considerations
editSecurity and Privacy
editWhile cloud providers implement robust security measures, storing sensitive data off-premises raises concerns about data breaches, unauthorized access, and compliance with data protection regulations. Organizations must understand their security responsibilities in the shared responsibility model.
Compliance and Legal Issues
editDifferent industries and jurisdictions have specific regulations regarding data storage, processing, and transfer. Organizations must ensure their cloud usage complies with relevant regulations such as GDPR, HIPAA, or industry-specific requirements.
Vendor Lock-In
editMigrating applications and data from one cloud provider to another can be complex and costly due to proprietary technologies, APIs, and data formats. Organizations should plan for portability when architecting cloud solutions.
Downtime and Availability
editWhile cloud providers typically offer high availability, outages can occur. Organizations must plan for potential downtime and implement redundancy strategies across multiple availability zones or providers.
Performance and Latency
editInternet connectivity issues or distance from datacenters can impact application performance. Organizations serving specific geographic regions should consider datacenter locations carefully.
Cost Management
editWhile cloud computing can reduce costs, expenses can escalate quickly without proper monitoring and management. The pay-as-you-go model requires careful tracking of resource usage to avoid unexpected bills.
Cloud Computing and Web Hosting
editCloud computing has significantly influenced the web hosting industry. Traditional web hosting typically involves fixed server resources, while cloud hosting leverages cloud computing principles to offer more flexible, scalable solutions. Cloud hosting distributes website resources across multiple interconnected servers, providing redundancy and the ability to handle traffic spikes automatically.
Many web hosting providers now offer cloud-based hosting services alongside traditional shared, VPS, and dedicated server options. The boundary between web hosting and cloud computing continues to blur as more hosting providers adopt cloud technologies and infrastructure.
Major Cloud Service Providers
editThe cloud computing market is dominated by several major providers:
- Amazon Web Services (AWS) - Market leader with the broadest range of services and global infrastructure
- Microsoft Azure - Strong enterprise integration with Microsoft products and hybrid cloud capabilities
- Google Cloud Platform (GCP) - Strengths in data analytics, machine learning, and Kubernetes
- IBM Cloud - Focus on enterprise, hybrid cloud, and AI services
- Oracle Cloud - Emphasis on database services and enterprise applications
- Alibaba Cloud - Leading provider in Asia-Pacific region
Numerous other providers serve specific markets, regions, or niches, including DigitalOcean, Linode, Vultr, and specialized providers focusing on particular use cases or geographic areas.
Technologies and Tools
editVirtualization
editThe foundation of cloud computing, virtualization allows multiple virtual machines to run on a single physical server, maximizing resource utilization and enabling the multi-tenant model.
Containers
editLightweight alternatives to virtual machines, containers package applications with their dependencies, enabling consistent deployment across environments. Docker and Kubernetes have become standard tools for container deployment and orchestration in cloud environments.
Cloud services are accessed and managed through APIs, enabling automation, infrastructure-as-code, and integration with development workflows.
Serverless Computing
editAlso known as Function-as-a-Service (FaaS), serverless computing allows developers to run code without provisioning or managing servers. The cloud provider automatically handles infrastructure scaling and management.
Edge Computing
editAn emerging paradigm that brings computation and data storage closer to end users, reducing latency and bandwidth usage. Edge computing complements cloud computing for latency-sensitive applications.
Use Cases
editApplication Development and Testing
editCloud platforms provide environments for developing, testing, and deploying applications quickly without investing in physical infrastructure.
Data Storage and Backup
editCloud storage offers scalable, durable, and geographically distributed storage for data backup, archival, and disaster recovery.
Big Data Analytics
editCloud computing provides the computational power and storage needed for analyzing large datasets, with services for data warehousing, machine learning, and business intelligence.
Content Delivery
editContent delivery networks (CDNs) built on cloud infrastructure distribute content globally for faster access and improved user experience.
Internet of Things (IoT)
editCloud platforms provide infrastructure for collecting, processing, and analyzing data from IoT devices at scale.
Artificial Intelligence and Machine Learning
editCloud providers offer specialized services and hardware for training and deploying AI and machine learning models without requiring expensive on-premises infrastructure.
Future Trends=
editEdge and Distributed Cloud
editIncreasing distribution of cloud services to edge locations closer to users and devices for lower latency and improved performance.
Quantum Computing
editMajor cloud providers are beginning to offer access to quantum computing resources as the technology matures.
Sustainability
editGrowing focus on renewable energy, carbon neutrality, and efficient datacenter operations to reduce environmental impact.
AI-Driven Cloud Management
editIncreased use of artificial intelligence for optimizing resource allocation, predicting failures, and automating cloud operations.
Specialized Cloud Services
editContinued development of industry-specific cloud solutions tailored to healthcare, finance, manufacturing, and other sectors with unique requirements.
See Also
editReferences
editICANNWiki resources: Special Pages | Content Guide | Documentation | Development || Maintenance: Articles needing attention | Candidates for deletion || Projects: Internet & Digital Governance Library