Professional Documents
Culture Documents
Introduction
Introduction
CANTT
Introduction
Cloud computing refers to any kind of hosted service delivered over the internet. These services
often include servers, databases, software, networks, analytics and other computing functions
that can be operated through the cloud. Files and programs stored in the cloud can be accessed
anywhere by users on the service, eliminating the need to always be near physical hardware. In
the past, for example, user-created documents and spreadsheets had to be saved to a physical
hard drive, USB drive or disk. Without some kind of hardware component, the files were
completely inaccessible outside the computer they originated on.
Front End
The front end is used by the client. It contains client-side interfaces and applications that are
required to access the cloud computing platforms. The front end includes web servers (including
Chrome, Firefox, internet explorer, etc.), thin & fat clients, tablets, and mobile devices.
Back End
The back end is used by the service provider. It manages all the resources that are required to
provide cloud computing services. It includes a huge amount of data storage, security
mechanism, virtual machines, deploying models, servers, traffic control mechanisms, etc.
Resource isolation also known as resource segmentation, is the practice of ensuring that the
computing resources allocated to one user or application in the cloud are separate and isolated
from those of others. This isolation is crucial to prevent interference, unauthorized access, and
security breaches. In a cloud environment, each user or application should not be able to access
or affect the resources allocated to others.
For example: In a multi-tenant cloud, strong resource isolation safeguards one user's virtual
machine from accessing another user's data or resources, preserving data privacy and security
Dynamic Memory Allocation
Dynamic memory allocation in cloud computing refers to the ability to allocate and deallocate
memory (RAM) resources on-demand based on the requirements of applications, virtual
machines, or workloads. It allows cloud providers to efficiently manage and share memory
resources among multiple users and applications in a flexible manner.
Memory Balancing
Load Balancing for Memory Resources
Load balancing for memory resources is the practice of distributing memory workloads evenly
across a cluster of servers or virtual machines to ensure efficient utilization and prevent
performance bottlenecks. This helps maintain a balanced memory usage pattern, optimizing the
overall system's performance.
Strategies for efficient memory utilization
These strategies are essential in ensuring efficient memory utilization in various computing
environments, including virtualized systems and cloud computing.
Memory Ballooning: Adjust memory allocations to virtual machines based on real-time
demand, reallocating memory resources where needed to optimize utilization.
Dynamic Memory Allocation: Allocate and deallocate memory resources on-demand,
scaling memory to match application or workload requirements, preventing over-
provisioning.
Memory Paging: Divide memory into fixed-size blocks (pages) and swap them between
RAM and disk when not actively in use, optimizing RAM usage.
Memory Swapping: Move entire processes or application data between RAM and disk to
free up memory for more critical tasks, enhancing overall system stability.
Memory Over commitment: Allocate more memory than physically available by relying on
statistical analysis of resource usage, while closely monitoring and managing memory to
avoid performance degradation.
Memory Mirroring: Duplicate memory content across multiple memory modules to
enhance data redundancy and fault tolerance, primarily used in high-availability systems.
Transparent Page Sharing: Identify and share identical memory pages across multiple
instances or virtual machines to reduce redundant memory usage, saving memory resources.
Public Cloud
This is the most common and all of the players in cloud computing (Amazon, Microsoft, Apple
and Google) run public clouds accessible anywhere with login credentials and the right web app.
Private Cloud
This model offers the same kind of flexibility as the public cloud, but with the infrastructure
needs (hosting, data storage, IT staff, etc.) provided by the companies or users of the service.
Additionally, the restricted access and hands-on management of hosting gives the private model
an extra layer of security.
Hybrid Cloud
Hybrid cloud computing is a combination of the public and private models. Two cloud types are
linked over the internet and can share resources when needed (for example, if the private cloud
reaches storage capacity or becomes corrupted, the public cloud can step in and save the day).
Community Cloud
Infrastructure is shared by several organizations with common computing concerns, such as
regulatory compliance and industry standards. It is less common than public, private, and hybrid
clouds but may be suitable for certain collaborative efforts.
Advantages
Cloud computing offers numerous advantages that have made it a popular choice for businesses
and individuals. Here are some key advantages of cloud computing:
Cost Efficiency
Pay-as-You-Go Model: Users pay only for the resources they consume, allowing for cost
savings by eliminating the need for upfront investments in hardware and infrastructure.
Economies of Scale: Cloud providers benefit from economies of scale, which can result in lower
costs for users due to the large scale and efficiency of their operations.
Scalability
Cloud resources can be easily scaled up or down based on demand. This flexibility allows
organizations to adapt to changing workloads without over-provisioning or under-provisioning
resources.
Flexibility and Accessibility
Cloud services can be accessed from anywhere with an internet connection. This enables remote
work, collaboration, and flexibility in accessing applications and data across different devices.
Reliability and Availability
Cloud providers typically offer high levels of reliability and availability through redundancy and
backup mechanisms. This helps ensure that applications and data are accessible even in the case
of hardware failures.
Automatic Updates
Cloud service providers handle system maintenance, updates, and patches, reducing the burden
on users and IT teams. This ensures that the latest features, security patches, and improvements
Disadvantage
While cloud computing offers numerous advantages, it also comes with certain disadvantages
and challenges that organizations need to consider. Here are some common disadvantages of
cloud computing.
Security Concerns
Security is a significant concern, and some organizations may be hesitant to trust third-party
providers with sensitive data. Although cloud providers invest heavily in security, breaches can
still occur, and there may be concerns about data privacy and compliance with regulations.
Downtime and Service Outages
Cloud services are not immune to downtime or outages. If the cloud provider experiences
technical issues or maintenance activities, it can affect the availability of services, leading to
potential disruptions for users.
Limited Customization and Control
Organizations may have limited control over the infrastructure and configurations in a public
cloud environment. This lack of control can be a disadvantage for those who require highly
customized or specialized computing environments
Dependence on Internet Connectivity
Access to cloud services relies on internet connectivity. If there are connectivity issues or the
internet goes down, users may experience disruptions in accessing their applications and data.
Lack of Standardization
The lack of standardization in cloud computing services and platforms can create challenges for
interoperability and data portability between different providers.
Potential for Data Loss
Although cloud providers implement backup and redundancy measures, data loss is still a
possibility. Accidental deletions, service provider errors, or other unforeseen events could result
in data loss.
Applications
Cloud computing finds application across a wide range of industries and use cases due to its
flexibility, scalability, and cost-effectiveness. Here are some common applications of cloud
computing:
Web-Based Email Services
Services like Gmail, Outlook, and Yahoo Mail leverage cloud computing to store and manage
email data. Users can access their emails from any device with an internet connection.
Data Storage and Backup
Cloud storage services such as Dropbox, Google Drive, and Microsoft OneDrive allow users to
store and back up their data securely in the cloud. This eliminates the need for physical storage
devices and provides accessibility from anywhere.
Content Delivery and Streaming
Content delivery networks (CDNs) use cloud computing to efficiently distribute and deliver
multimedia content, such as videos and streaming services, to users globally. Examples include
Netflix and YouTube.