FCC NOTES
FCC NOTES
Unit 1
Introduction to Cloud Computing
Cloud Computing:
Cloud Computing refers to the on-demand delivery of the IT resources
especially computing power and data storage through the internet with pay per use
pricing. It generally refers to the data centres available to the users over internet. Cloud
Computing is the virtualized pool of resources. It allows us to create, configure and
customize our applications online. The user can access any resource at anytime and
anywhere without worrying about the management and maintenance of actual
resources. Cloud computing delivers both a combination of hardware and software-
based computing resources over network.
Serial
Number Category Cloud Computing Cluster Computing
Initial capital cost for setup Initial capital cost for setup is
6. Initial Cost
is very low. very high.
Security
7. Very low Very high
Requirement
User management is
User User management is
11. centralized or decentralized
Management centralized.
to vendor/third party.
Dynamic computing
Tightly coupled
14. Characteristic infrastructure/resources/ser
systems/resources
vices
1) Agility
The cloud works in a distributed computing environment. It shares resources
among users and works very fast.
2) High availability and reliability
The availability of servers is high and more reliable because the chances of
infrastructure failure are minimum.
Rather than being hosted on one single instance of a physical server, hosting is
delivered on a virtual partition that draws its resource, such as disk space, from an
extensive network of underlying physical servers. If one server goes offline it will
have no effect on availability, as the virtual servers will continue to pull resources
from the remaining network of servers.
3) High Scalability
Cloud offers "on-demand" provisioning of resources on a large scale, without
having engineers for peak loads.
With Cloud hosting, it is easy to grow and shrink the number and size of servers
based on the need. This is done by either increasing or decreasing the resources in
the cloud. This ability to alter plans due to fluctuations in business size and needs
is a superb benefit of cloud computing, especially when experiencing a sudden
growth in demand.
4) Multi-Sharing
With the help of cloud computing, multiple users and applications can work
more efficiently with cost reductions by sharing common infrastructure.
5. Ransomware/Malware Protection
Ransomware is plain nasty. Unfortunately, it frequently makes the news. The
malware will search the network for shares that contain files and documents to
encrypt in addition to the locally infected computer, which is one of the more
frightening characteristics of ransomware. You might be relieved to learn that your
cloud storage can assist prevent ransomware by providing some backup security
advantages because it’s more difficult to access without proper authentication if
you’re hit by ransomware or another type of malware that is encrypting or
destroying files.
6. Usability or Accessibility
The key advantages of cloud storage are accessibility and usability. You can
rapidly upload your file to your online drive even if you lack technical ability
because they both have simple user interfaces. Most cloud data storage providers
include drag-and-drop functionality and an intuitive user interface. For instance, if
you saved a file to a disc on a mobile device, you can access that file on a computer
or any other device with internet access. It doesn’t matter where you are right now.
Your files, which are kept online in one of the data centres, can be accessed if you
have a strong internet connection
7. Flexibility
In general, using the cloud gives businesses more flexibility than hosting on a
local server. Additionally, a cloud-based solution could be able to quickly meet your
need for more bandwidth without necessitating a difficult (and expensive) update to
your IT infrastructure. This improved independence and flexibility may
considerably raise the overall effectiveness of your firm. You won’t be able to focus
on achieving your company’s goals and satisfying consumers if your present IT
solutions need you to devote too much of your time to computer and data-storage
concerns. However, if you rely on a third party to manage the IT hosting and
infrastructure, you’ll free up more time for the areas of your organization that
directly impact your bottom line.
8. Automation
A cloud storage service may be used by multiple users, and as everything is
handled and automated by the cloud provider vendor, one user’s current task would
not influence that of another. When you want to store a file in the cloud, cloud
storage services function like a hard drive on your computer and won’t interfere
with any ongoing tasks.
9. Scalable
You can upgrade the service plan if the storage included in the current plan is
insufficient. Additionally, the additional space will be provided to your data storage
environment with some new capabilities, so you won’t need to migrate any data
from one place to another. Scalable and adaptable cloud storage is offered.
10.Reliability
Many people create a cloud backup of their hard disc in case their hard drive
fails. The comfort that comes from knowing that data won’t suddenly vanish one
day may be well worth the small price.
1. Vulnerability
The majority of PCs and servers that save data require an internet connection.
Cloud solutions are internet-based by nature, which means that they are linked to
other computers and servers. Thus, making them vulnerable to attacks by
malicious users on the network.
2. Internet dependency
The internet starts to be reliant on your storage. Due to the fact that the internet
will govern our world in 2022, this disadvantage will diminish. One can always
save files while offline and access them later. However, an internet connection
will be required for the update and sync.
4. Limitation on control
After the user moves data to the cloud, the vendor is now in charge of it. This
implies that users must rely on the vendors to maintain their services in a safe,
stable, up-and-running, and fully functional manner. This limits the influence on
data safety Nearly all reliability is left up to the storage vendor, along with
accessibility.
5. Cost
Although cloud storage options are normally a cost-effective choice, they could
not be available if utilized for short-term or very small-scale projects, depending
on the cloud vendor. Users can be on the hook for 18 more months than needed,
which is not financially feasible if the demand for data storage is for 6 months but
the vendor’s minimum offer is 2 years.
6. Migration
The ability to switch to another cloud service has grown much less well than other
aspects of cloud storage. As a result, many clients continue to find this scenario to
be quite difficult. Although several of these options are currently unavailable, one
may choose to migrate data to another solution if one discovers that the cloud
provider does not adequately address all of the users’ needs. If there are such
options, they might be pricey. As a result, additional expenses are now necessary,
most often in the form of signing a deal with a second cloud-storage vendor while
being bound by the terms of the first.
7. Regulatory compliance
Only cloud storage options with the highest levels of security protection may be
trusted by financial organizations. When penalties, fines, and lawsuits are imposed
because authorities think it necessary for specific criteria for data protection, the
company will be the target, not the cloud provider.
8. Minimal support
Even when using a simple, rapid, and secure cloud solution, problems can occur
because every user and business has different wants and specifics. The absence of
support for cloud storage is one of the main difficulties there.
9. Features
Each cloud service provider is unique from the others. Users may occasionally
only be able to use the basic kinds of cloud storage that cloud providers provide.
As a result, one cannot modify certain features or take advantage of all of their
benefits.
10.Data management
Given that cloud storage systems have their own organizational systems,
managing data may be a pain. The system used by a cloud vendor might not work
with the way one manages their storage currently.
Docker was firstly released in March 2013. It is used in the Deployment stage of
the software development life cycle that's why it can efficiently resolve issues related
to the application deployment.
Docker is a set of Platforms as a service (PaaS) product that use Operating
system-level virtualization to deliver software in packages called containers.
Containers are isolated from one another and bundle their own software, libraries,
and configuration files; they can communicate with each other through well-
defined channels. All containers are run by a single operating system kernel and
therefore use fewer resources than a virtual machine.
What is Docker?
Docker is an open-source centralized platform designed to create,
deploy, and run applications. Docker uses container on the host's operating
system to run applications. It allows applications to use the same Linux
kernel as a system on the host computer, rather than creating a whole virtual
operating system. Containers ensure that our application works in any
environment like development, test, or production.
What is a Dockerfile?
The Dockerfile uses DSL (Domain Specific Language) and contains instructions
for generating a Docker image. Dockerfile will define the processes to quickly
produce an image. While creating your application, you should create a
Dockerfile in order since the Docker daemon runs all of the instructions from
top to bottom.
(The Docker daemon, often referred to simply as “Docker,” is a background
service that manages Docker containers on a system.)
• It is a text document that contains necessary commands which on execution help
assemble a Docker Image.
• Docker image is created using a Dockerfile.
•
To Know more about the Dockerfile refer to the Docker – Concept of Dockerfile .
Docker Commands
Through introducing the essential docker commands, docker became a powerful
software in streamlining the container management process. It helps in ensuring
a seamless development and deployment workflows. The following are the some
of docker commands that are used commonly:
• Docker Run: It used for launching the containers from images, with specifying
the runtime options and commands.
• Docker Pull: It fetches the container images from the container registry like
Docker Hub to the local machine.
• Docker ps : It helps in displaying the running containers along with their
important information like container ID, image used and status.
• Docker Stop : It helps in halting the running containers gracefully shutting down
the processes within them.
• Docker Start: It helps in restarting the stopped containers, resuming their
operations from the previous state.
• Docker Login: It helps to login in to the docker registry enabling the access to
private repositories.
To Know more about the docker commands refer tot the Docker – Instruction
Commands .
Docker Engine
The software that hosts the containers is named Docker Engine. Docker Engine
is a client-server based application. The docker engine has 3 main components:
1. Server: It is responsible for creating and managing Docker images, containers,
networks, and volumes on the Docker. It is referred to as a daemon process.
2. REST API : It specifies how the applications can interact with the Server and
instructs it what to do.
3. Client: The Client is a docker command-line interface (CLI), that allows us to
interact with Docker using the docker commands.
Advantages of Docker
There are the following advantages of Docker -
o It runs the container in seconds instead of minutes.
o It uses less memory.
o It provides lightweight virtualization.
o It does not a require full operating system to run applications.
o It uses application dependencies to reduce the risk.
o Docker allows you to use a remote repository to share your container with others.
o It provides continuous deployment and testing environment.
Disadvantages of Docker
There are the following disadvantages of Docker -
o It increases complexity due to an additional layer.
o In Docker, it is difficult to manage large amount of containers.
o Some features such as container self -registration, containers self-inspects,
copying files form host to the container, and more are missing in the Docker.
o Docker is not a good solution for applications that require rich graphical interface.
o Docker provides cross-platform compatibility means if an application is designed
to run in a Docker container on Windows, then it can't run on Linux or vice versa.
1.5 Introduction to container
What are Containers?
In the traditional classical deployment scenario, we had hardware and an
operating system for running multiple applications. If you want to run node.js,
having certain dependencies, it will necessitate certain libraries and some
specific kind of operating system. For example, in order to install MySQL, it
requires some libraries, dependencies, and specific requirements of the operating
system.
Likewise, if you run multiple software, each one of them will require its own
library as well as dependency. It may even cause conflict because not necessarily
each application will ask for the same libraries specific to some version; some
may need a different version of the same library. Now the question is, how we
will solve such an issue? Because eventually, you will end up with dependency
matrix hell where you cannot upgrade or maintain this matrix hell.
To solve this dependency matrix hell for upgrading the software or the
applications, we will utilize the containers. Containers build the application, ship
the application, deploy, and scale these applications with ease and independently.
Containers vs. VMs
In order to learn about the container, it is recommended to first know how it
varies from a traditional virtual machine (VM). In the case of traditional
virtualization, a hypervisor is leveraged to virtualize physical hardware
regardless of it being on-premises or in the cloud. For each virtual machine,
there exists a guest of the operating system, a virtual blueprint of the hardware
required by the OS to run, accompanied by an application and its connected
libraries and dependencies.
The containers virtualize the operating system (typically Linux) rather than
virtualizing the hidden hardware so that each particular container can include
both the libraries and dependencies of the corresponding application. The
containers are fast, portable, and lightweight due to the absence of the guest
operating system.
Architecture of Container
Similar to the traditional ones, the container also has an Operating
System and Hardware. On top of hardware, we have Container Engine such
as Docker. The Container Engine software creates a container that packages the
libraries and dependencies alongside as it will facilitate effortless movement of a
container from one machine to another.
These libraries and dependencies come as a part of a package, which is nothing
but a container. In the same way, we will have different containers, which can be
easily moved across the Virtual Machines regardless of worrying about the
underlying dependencies that may be required by the application to run because
everything that is needed by an application to run is packaged as a container that
you can move around.
Advantages of containers
Amazon ECS
Amazon Elastic Container Service is the only Amazon cloud-based service,
which can easily manage the Docker containers inside a cluster. ECS comes up
with one of the most powerful API that is tightly integrated with the rest of the
Amazon cloud suite empowers a powerful workflow of DevOps.
Openshift
The Openshift container platform refers to an enterprise Red Hat Linux product.
It can be understood as RedHat's cloud development Platform as a Service
(PaaS). Openshift is one of those trusted enterprise cloud platforms that can
merge with other Red Hat tools.
Use cases of containers
In the cloud environment, container plays an eminent role. Having said that,
many companies are planning to replace the VMs with Containers being general-
purpose compute platforms for their applications and workloads. Following are
some relevant use case of containers:
o Microservices: Since containers are so small and lightweight, they are one of
the best matches for microservice architectures where applications are
constructed out of several loosely coupled and independently deployable smaller
services.
o DevOps: The combination of microservices as architecture and containers as a
platform is a common foundation for many teams that embrace DevOps, similar
to how they are built, ship, and run the software.
o Hybrid, multi-cloud: The containers can run rationally at any platform, across
laptops, on-premises, and cloud environments. They are a perfect basic
architecture for hybrid cloud and multi-cloud schemes. Organizations determine
themselves operating across a mix of multiple public clouds in sequence with
their own data center.
o Application modernizing and migration: It is one of the preferred approaches
to modernized applications that initiate by containerizing them so they can move
them to the cloud.
Cloud Service Models
There are the following three types of cloud service models -
1. Infrastructure as a Service (IaaS)
2. Platform as a Service (PaaS)
3. Software as a Service (SaaS)
Computing: To provision virtual machines (VMs) for end users, IaaS providers offer
virtual central processing units (CPUs) and virtual main memory. As a result, users may
run their workloads and apps on the provider's infrastructure without having to worry
about managing the underlying hardware.
Storage: Back-end storage services are provided by IaaS providers, enabling users to
store and access their files and data. This offers scalable and trustworthy storage
solutions for a variety of use cases and can include block storage, object storage, or file
storage alternatives.
Network: IaaS providers provide networking tools, including routers, switches, and
bridges for the VMs through Network as a Service (NaaS). This enables connectivity
and communication between VMs and other resources while also allowing customers to
create and maintain their network architecture within the IaaS environment.
Advertisement
Load balancers: Infrastructure-layer load balancing services are provided by IaaS
providers. Incoming network traffic is split up among many virtual machines (VMs) or
resources by load balancers, resulting in effective resource management and excellent
application and service availability.
Security: Security features and services are frequently offered by IaaS providers as part
of their offering. To safeguard data and resources housed on the IaaS platform, this can
include network security, firewall configurations, access controls, encryption, and other
security measures.
Backup and disaster recovery services are provided by some IaaS providers, enabling
customers to create backup copies of their data and software and put recovery plans in
place in the event of data loss or system problems. This promotes business continuity
and data security.
Monitoring and Management: IaaS suppliers provide tools and services for
monitoring and controlling the resources and infrastructure. This can involve managing
VMs, storage, and network configurations using management panels or APIs, as well as
measuring resource utilization, automating scaling, and monitoring performance.
It's vital to remember that depending on the provider and their offerings, the precise
services offered by IaaS providers may change. The list above illustrates some typical
IaaS providers' common services.
Virtualized Computing Resources:
o Cloud computing's Infrastructure as a Service (IaaS) model must include
virtualized computer resources. IaaS enables users to rent computer infrastructure
from cloud service providers over the internet, including virtual machines (VMs),
virtual networks, and storage.
o In IaaS, virtual machines (VMs) are a crucial type of virtualized computing
resource. Multiple operating systems and applications can operate on a single
physical host machine thanks to virtual machines (VMs), which are software
simulations of real hardware. Customers can select the VM that best matches their
needs from a variety of VM types that IaaS providers normally offer, each with a
different CPU, memory, and storage configuration.
o Virtual Networks: Another virtualized computing resource in IaaS is virtual
networks. Customers can design and maintain network topologies in the cloud,
including subnets, IP addresses, and routing tables, using virtual networks. Virtual
networks offer clients' applications and data a secure, decoupled environment and
make it simple to integrate them with on-premises networks.
o A crucial virtualized computing resource in IaaS is storage. IaaS providers
frequently offer various storage options, including block, object, and file storage,
each with its own performance, pricing, and cost-effectiveness features. Because
storage resources are highly scalable, clients can alter their storage capacity as
needed without having to change their actual hardware.
o In comparison to conventional on-premises hardware architecture, virtualized
computing resources have better scalability, flexibility, and cost-effectiveness.
Without making expensive hardware investments or taking care of their own data
centers, customers may rent the computing capabilities they require on demand
and only pay for what they use.
Advantages of IaaS Cloud Computing Layer
There are the following advantages of the IaaS computing layer -
1. Shared infrastructure
IaaS allows multiple users to share the same physical infrastructure.
2. Web access to the resources
Iaas allows IT users to access resources over the internet.
3. Pay-as-per-use model
IaaS providers provide services based on a pay-as-per-use basis. The users are required
to pay for what they have used.
4. Focus on the core business
IaaS providers focus on the organization's core business rather than on IT infrastructure.
5. On-demand scalability
On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users do not
worry about upgrading software and troubleshooting issues related to hardware
components.
Disadvantages of IaaS Cloud Computing Layer
Security: In the IaaS context, security is still a major problem. Although IaaS companies
have security safeguards in place, it is difficult to achieve 100% protection. To safeguard
their data and applications, customers must verify that the necessary security
configurations and controls are in place.
Maintenance and Upgrade: The underlying infrastructure is maintained by IaaS
service providers, but they are not required to automatically upgrade the operating
systems or software used by client applications. Compatibility problems could come
from this, making it harder for customers to maintain their current software.
Interoperability Issues: Interoperability Problems: Because of interoperability
problems, moving virtual machines (VMs) from one IaaS provider to another can be
difficult. As a result, consumers may find it challenging to transfer providers or integrate
their IaaS resources with other platforms or services. This may result in vendor lock-in.
Performance Variability: Due to shared resources and multi-tenancy, the performance
of VMs in the IaaS system can change. During times of high demand or while sharing
resources with other users on the same infrastructure, customers' performance may
fluctuate.
Dependency on Internet Connectivity: Internet access is crucial to IaaS, which is
largely dependent on it. Any interruptions or connectivity problems could hinder access
to cloud infrastructure and services, which would have an impact on productivity and
business operations.
Learning Curve and Complexity: Learning Curve and Complexity: Using and
administering IaaS calls for a certain amount of technical know-how and comprehension
of cloud computing principles. To efficiently use and manage the IaaS resources,
organizations may need to spend money on IT employee training or turn to outside
experts.
Cost Management: Cost Control: IaaS provides scalability and flexibility, but it can
also result in difficult cost control. In order to prevent unforeseen charges, customers
must keep an eye on and manage their resource utilization. Higher costs may be the result
of inefficient use of resources or improper resource allocation.
Some Important Points About IaaS Cloud Computing Layer
IaaS cloud computing platform cannot replace the traditional hosting method, but it
provides more than that, and each resource that is used are predictable as per the usage.
IaaS cloud computing platform may not eliminate the need for an in-house IT
department. It will be needed to monitor or control the IaaS setup. IT salary expenditure
might not reduce significantly, but other IT expenses can be reduced.
Breakdowns at the IaaS cloud computing platform vendors can bring your business to a
halt stage. Assess the IaaS cloud computing platform vendor's stability and finances.
Make sure that SLAs (i.e., Service Level Agreement) provide backups for data,
hardware, network, and application failures. Image portability and third-party support
are a plus point.
The IaaS cloud computing platform vendor can get access to your sensitive data. So,
engage with credible companies or organizations. Study their security policies and
precautions.
Top Iaas Providers who are providing IaaS cloud computing platform
Providers Services
Characteristics of SaaS:
o Web-based Delivery: SaaS apps can be accessed from anywhere with an internet
connection because they are supplied over the internet, often through a web
browser. Users no longer need to install and maintain software programs on their
local machines as a result.
o Multiple Users or "tenants" can access SaaS applications from a single instance
of the program thanks to the concept of multi-tenancy. As a result, the provider
can serve several clients with the same application without administering unique
program instances for every client.
o Automatic Updates: SaaS providers are in charge of keeping the software up to
date and making sure that everyone has access to the newest features and security
patches. Users are no longer required to manually install updates or fixes as a
result.
o Scalable: SaaS systems are scalable, which can readily grow or shrink in response
to user demand. This frees up enterprises from worrying about infrastructure or
licensing fees and lets them add or remove users as needed.
o Pricing on a Subscription Basis: SaaS programs are frequently sold using a
subscription-based pricing model, in which customers pay a monthly or yearly
price to access the program. As a result, companies won't need to invest
significantly in software licenses upfront.
o Data Security, including data encryption, access restrictions, and backups, is the
responsibility of SaaS providers. Users no longer need to handle their own data
security because of this.
In conclusion, SaaS is a type of cloud computing where software applications are
distributed online.
Web-based SaaS solutions provide multi-tenancy, providing data protection, automatic
updates, scalability, and subscription-based pricing. Businesses can access and use
software applications cost-effectively with SaaS without having to worry about
infrastructure or program upkeep.
Access to Software Applications Over the Internet:
o The majority of the time, SaaS companies host software programs on their own
servers and provide them online. Using their login information, users can access
the software through a web browser or mobile app, authenticating and gaining
access to it.
o Users don't need to install or maintain any software on their local machines
because the provider hosts and maintains it. As a result, users may easily access
the program from any location with an internet connection and on any device that
can run mobile apps or web surfing.
o All users have access to the most recent features and security updates because the
provider is in charge of keeping the program updated and maintained. Users are
no longer required to manually install updates or fixes as a result.
o Users often pay a monthly or yearly charge to access the software through
subscription-based SaaS providers. Because they don't have to make a significant
upfront investment in software licenses, businesses are able to budget for their
software costs more effectively as a result.
o In general, SaaS gives enterprises a practical way to use and access software
programs without having to worry about infrastructure or software upkeep.
Providers are in charge of keeping the software up to date so that all users have
access to the newest features and security patches. Users can access the software
from any location with an internet connection.
Pricing Models: Subscription or User-Based
o Most SaaS companies use a subscription-based pricing structure; however, some
may also provide a usage-based pricing structure. Users that choose a
subscription-based pricing model for their software access pay a set monthly or
yearly charge.
o The cost may vary according to the usage of the software's capabilities or the
number of users. Businesses benefit from predictability and consistency thanks to
this strategy because they can more efficiently budget for their software expenses.
o In a usage-based pricing model, the costs are determined by how the program is
actually used, such as the volume of data processed, the number of API requests,
or the number of transactions.
o For companies with erratic usage patterns or those that only want the program
sometimes, this model may be more adaptable and economical.
o According to their business strategy and the demands of their clients, SaaS
providers may offer either a subscription-based or a usage-based pricing plan.
SaaS offers organizations a cost-effective option to access and use software
products without having to worry about infrastructure or software maintenance,
regardless of the price model.
Services Provided by SaaS:
Business Services - SaaS Provider provides various business services to start up the
business. The SaaS business services include ERP (Enterprise Resource Planning), CRM
(Customer Relationship Management), billing, and sales.
Advertisement
Document Management - SaaS document management is a software application
offered by a third party (SaaS provider) to create, manage, and track electronic
documents.
Examples: Slack, Samepage, Box, and Zoho Forms.
Social Networks - As we all know, social networking sites are used by the general
public, so social networking service providers use SaaS for their convenience and handle
the general public's information.
Mail Services - To handle the unpredictable number of users and load on e-mail services,
many e-mail providers offer their services using SaaS.
Collaboration Tools: SaaS companies provide collaboration solutions that let teams
collaborate effectively no matter where they are physically located. Platforms for project
management, apps for team communication, and file-sharing services are some of these
resources.
Examples include Slack, Microsoft Office 365, and Google Workspace (formerly G
Suite).
Human Resources Management: SaaS-based HR management systems give
companies tools to simplify key HR procedures, such as employee onboarding, payroll
administration, timekeeping, performance reviews, and employee self-service portals.
Workday, BambooHR, and ADP Workforce Now, as examples.
Customer Support and Help Desk: SaaS platforms provide customer support and help
desk solutions that enable firms to manage customer inquiries, track support tickets, and
promptly address customer issues.
For instance, Salesforce Service Cloud, Freshdesk, and Zendesk.
Marketing and Sales Automation: To increase productivity and boost income, firms
can automate marketing campaigns, lead generation, customer relationship management,
and sales activities using SaaS marketing and sales automation technologies.
Examples include Marketo, Pardot, and HubSpot.
E-commerce Platforms: SaaS-based e-commerce platforms make it simpler for
businesses to launch and run online storefronts, maintain product catalogs, handle
payments, and keep track of orders.
Examples include WooCommerce (a WordPress plugin), BigCommerce, and Shopify.
Advantages of SaaS Cloud Computing Layer
1. SaaS is easy to buy
SaaS pricing is based on a monthly fee or annual fee subscription, so it allows
organizations to access business functionality at a low cost, which is less than licensed
applications.
Unlike traditional software, which is sold as a licensed base with an up-front cost (and
often an optional ongoing support fee), SaaS providers are generally pricing the
applications using a subscription fee, most commonly a monthly or annual fee.
2. One to Many
SaaS services are offered as a one-to-many model means a single instance of the
application is shared by multiple users.
3. Less hardware required for SaaS
The software is hosted remotely, so organizations do not need to invest in additional
hardware.
4. Low maintenance required for SaaS
Software as a service removes the need for installation, set-up, and daily maintenance
for organizations. The initial set-up cost for SaaS is typically less than the enterprise
software. SaaS vendors are pricing their applications based on some usage parameters,
such as the number of users using the application. So SaaS does easy to monitor and
automatic updates.
5. No special software or hardware versions are required
All users will have the same version of the software and typically access it through the
web browser. SaaS reduces IT support costs by outsourcing hardware and software
maintenance and support to the IaaS provider.
6. Multidevice support
SaaS services can be accessed from any device, such as desktops, laptops, tablets,
phones, and thin clients.
7. API Integration
SaaS services easily integrate with other software or services through standard APIs.
8. No client-side installation
SaaS services are accessed directly from the service provider using an internet
connection, so they do not need to require any software installation.
Disadvantages of SaaS Cloud Computing Layer:
1) Security
Actually, data is stored in the cloud, so security may be an issue for some users. However,
cloud computing is not more secure than in-house deployment.
2) Latency issue
Since data and applications are stored in the cloud at a variable distance from the end-
user, there is a possibility that there may be greater latency when interacting with the
application compared to local deployment. Therefore, the SaaS model is not suitable for
applications whose demand response time is in milliseconds.
3) Total Dependency on the Internet
Without an internet connection, most SaaS applications are not usable.
4) Switching between SaaS vendors is difficult
Switching SaaS vendors involves the difficult and slow task of transferring very large
data files over the internet and then converting and importing them into another SaaS
also.
Popular SaaS Providers
The below table shows some popular SaaS providers and services that are provided by
them -
Provider Services