|
|
Web Hosting
> Cloud computing
Cloud
computing is Internet- ("cloud-") based development and use
of computer technology ("computing"). In concept, it is a
paradigm shift whereby details are abstracted from the users
who no longer need knowledge of, expertise in, or control
over the technology infrastructure "in the cloud" that
supports them. It typically involves the provision of
dynamically scalable and often virtualized resources as a
service over the Internet.
The term cloud is used as a metaphor for the Internet, based
on how the Internet is depicted in computer network diagrams
and is an abstraction of the underlying infrastructure it
conceals. Typical cloud computing providers deliver
common business applications online which are accessed from
a web browser, while the software and data are stored on the
servers.
These applications are broadly divided into the following
categories: Software as a Service (SaaS), Utility Computing,
Web Services, Platform as a Service (PaaS), Managed Service
Providers (MSP), Service Commerce, and Internet Integration.
The name cloud computing was inspired by the cloud symbol
that is often used to represent the Internet in flow charts
and diagrams.
Economics
Cloud computing users can avoid capital expenditure (CapEx)
on hardware, software, and services when they pay a provider
only for what they use. Consumption is usually billed on a
utility (resources consumed, like electricity) or
subscription (time-based, like a newspaper) basis with
little or no upfront cost. Other benefits of this time
sharing-style approach are low barriers to entry, shared
infrastructure and costs, low management overhead, and
immediate access to a broad range of applications. In
general, users can terminate the contract at any time
(thereby avoiding return on investment risk and
uncertainty), and the services are often covered by service
level agreements (SLAs) with financial penalties.
According
to Nicholas Carr, the strategic importance of information
technology is diminishing as it becomes standardized and
less expensive. He argues that the cloud computing paradigm
shift is similar to the displacement of electricity
generators by electricity grids early in the 20th century.
Although companies might be able to save on upfront capital
expenditures, they might not save much and might actually
pay more for operating expenses. In situations where the
capital expense would be relatively small, or where the
organization has more flexibility in their capital budget
than their operating budget, the cloud model might not make
great fiscal sense. Other factors impacting the scale of any
potential cost savings include the efficiency of a company’s
data center as compared to the cloud vendor’s, the company's
existing operating costs, the level of adoption of cloud
computing, and the type of functionality being hosted in the
cloud.
Key characteristics
-
Agility
improves with users able to rapidly and inexpensively
re-provision technological infrastructure resources.
-
Cost is claimed to be greatly reduced and capital
expenditure is converted to operational expenditure. This
ostensibly lowers barriers to entry, as infrastructure
is typically provided by a third-party and does not need
to be purchased for one-time or infrequent intensive
computing tasks. Pricing on a utility computing basis is
fine-grained with usage-based options and fewer IT
skills are required for implementation (in-house).
-
Device
and location independence[35] enable users to access
systems using a web browser regardless of their location
or what device they are using (e.g., PC, mobile). As
infrastructure is off-site (typically provided by a
third-party) and accessed via the Internet, users can
connect from anywhere.
-
Multi-tenancy enables sharing of resources and costs
across a large pool of users thus allowing for: o Centralization of infrastructure in locations with lower
costs (such as real estate, electricity, etc.) o Peak-load capacity increases (users need not engineer for
highest possible load-levels) o Utilization and efficiency improvements for systems that
are often only 10–20% utilized.
-
Reliability improves through the use of multiple
redundant sites, which makes cloud computing suitable
for business continuity and disaster recovery.
Nonetheless, many major cloud computing services have
suffered outages, and IT and business managers can at
times do little when they are affected.
-
Scalability via dynamic ("on-demand") provisioning of
resources on a fine-grained, self-service basis near
real-time, without users having to engineer for peak
loads. Performance is monitored, and consistent and
loosely-coupled architectures are constructed using web
services as the system interface.
-
Security typically improves due to centralization of
data, increased security-focused resources, etc., but
concerns can persist about loss of control over certain
sensitive data, and the lack of security for stored
kernels. Security is often as good as or better than
under traditional systems, in part because providers are
able to devote resources to solving security issues that
many customers cannot afford. Providers typically log
accesses, but accessing the audit logs themselves can be
difficult or impossible. Furthermore, the complexity of
security is greatly increased when data is distributed over
a wider area and / or number of devices.
-
Sustainability comes about through improved resource
utilization, more efficient systems, and carbon
neutrality. Nonetheless, computers and associated
infrastructure are major consumers of energy.
-
Maintenance cloud computing applications are easier to
maintain, since they don't have to be installed on each
user's computer. They are easier to support and to improve
since the changes reach the clients instantly.
Clients
A cloud client consists of computer hardware and/or computer
software that relies on cloud computing for application
delivery, or that is specifically designed for delivery of
cloud services and that, in either case, is essentially
useless without it. For example:
-
Mobile (Linux based - Palm Pre-WebOS Linux Kernel,
Android-Linux Kernel, iPhone-Darwin Linux Kernel, Microsoft
based - Windows Mobile)
-
Thin client (CherryPal, Wyse, Zonbu, gOS-based
systems)
-
Thick client / Web browser (Internet Explorer, Mozilla
Firefox, Google Chrome, WebKit)
Application
A cloud application leverages cloud computing in software
architecture, often eliminating the need to install and run
the application on the customer's own computer, thus
alleviating the burden of software maintenance, ongoing
operation, and support. For example:
-
Peer-to-peer / volunteer computing (BOINC, Skype)
-
Web applications (Webmail, Facebook, Twitter, YouTube)
-
Security as a service (MessageLabs, Purewire, ScanSafe,
Zscaler)
-
Software as a service (A2Zapps.com, Google Apps, Salesforce,Learn.com, BigGyan.com)
-
Software plus services (Microsoft Online Services)
-
Storage [Distributed] o Content distribution (BitTorrent, Amazon CloudFront) o Synchronisation (Dropbox, Live Mesh, SpiderOak, ZumoDrive)
Platform
A cloud platform (PaaS) delivers a computing platform and/or
solution stack as a service, generally consuming cloud
infrastructure and supporting cloud applications. It
facilitates deployment of applications without the cost and
complexity of buying and managing the underlying hardware
and software layers. For example:
-
Services Identity (OAuth, OpenID) o Payments (Amazon Flexible Payments Service, Google
Checkout, PayPal) o Search (Alexa, Google Custom Search, Yahoo! BOSS) o Real-world (Amazon Mechanical Turk)
-
Solution stacks o Java (Google App Engine) o PHP (Rackspace Cloud Sites) o Python Django (Google App Engine) o Ruby on Rails (Heroku) o .NET (Azure Services Platform, Rackspace Cloud Sites) o Proprietary (Force.com, WorkXpress, Wolf Frameworks)
-
Storage [Structured] o Databases (Amazon SimpleDB, BigTable) o File storage (Amazon S3, Nirvanix, Rackspace Cloud Files) o Queues (Amazon SQS)
Types by visibility
Cloud computing types
Public cloud or external cloud describes cloud computing in
the traditional mainstream sense, whereby resources are
dynamically provisioned on a fine-grained, self-service
basis over the Internet, via web applications/web services,
from an off-site third-party provider who shares resources
and bills on a fine-grained utility computing basis.
A hybrid cloud environment consisting of multiple internal
and/or external providers "will be typical for most
enterprises".[58] A hybrid cloud can describe configuration
combining a local device, such as a Plug computer with cloud
services. It can also describe configurations combining
virtual and physical, colocated assets—for example, a mostly
virtualized environment that requires physical servers,
routers, or other hardware such as a network appliance
acting as a firewall or spam filter.
Private cloud and internal cloud are neologisms that some
vendors have recently used to describe offerings that
emulate cloud computing on private networks. These
(typically virtualisation automation) products claim to
"deliver some benefits of cloud computing without the
pitfalls", capitalising on data security, corporate
governance, and reliability concerns. They have been
criticized on the basis that users "still have to buy,
build, and manage them" and as such do not benefit from
lower up-front capital costs and less hands-on
management, essentially "[lacking] the economic model
that makes cloud computing such an intriguing concept".
While an analyst predicted in 2008 that private cloud
networks would be the future of corporate IT, there is
some uncertainty whether they are a reality even within the
same firm. Analysts also claim that within five years a
"huge percentage" of small and medium enterprises will get
most of their computing resources from external cloud
computing providers as they "will not have economies of
scale to make it worth staying in the IT business" or be
able to afford private clouds.[64]. Analysts have reported
on Platform's view that private clouds are a stepping stone
to external clouds, particularly for the financial services,
and that future datacenters will look like internal clouds.
The term
has also been used in the logical rather than physical
sense, for example in reference to platform as a service
offerings[66], though such offerings including Microsoft's
Azure Services Platform are not available for on-premises
deployment.
Types of services
Services provided by cloud computing can be split into three
major categories[68]:
Infrastructure-as-a-Service (IaaS) like Amazon Web Services
provides virtual servers with unique IP addresses and blocks
of storage on demand. Customers benefit from an API from
which they can control their servers. Because customers can
pay for exactly the amount of service they use, like for
electricity or water, this service is also called utility
computing.
Platform-as-a-Service (PaaS) is a set of software and
development tools hosted on the provider's servers.
Developers can create applications using the provider's
APIs. Google Apps is one of the most famous
Platform-as-a-Service providers. Developers should take
notice that there aren't any interoperability standards
(yet), so some providers may not allow you to take your
application and put it on another platform.
Software-as-a-Service (SaaS) is the broadest market. In this
case the provider allows the customer only to use its
applications. The software interacts with the user through a
user interface. These applications can be anything from web
based email, to applications like Twitter or Last FM. |