Information Technology Reference
In-Depth Information
Cloud Architecture
Cloud architecture is system architecture of software systems that are involved in the deliv-
ery of cloud services, such as software applications that use Internet-accessible on-demand
services. Cloud architecture typically involves multiple cloud components communicating
with each other over a loose coupling mechanism such as a messaging service or queue (one
example is Java Messaging Service, or JMS).
Applications built on cloud architecture use the underlying infrastructure to perform
a specific job by drawing the necessary resources on demand and then relinquishing the
unneeded resources and often disposing them once the job is complete. While in operation,
an application might scale up or down depending on the resource needs. FigureĀ 10.2 shows
a simple representation of cloud architecture.
FIGUREĀ 10.2 Cloud architecture
Infrastructure
Services
Platform
Web front-end
Storage
CLI
Billing
Monitoring
The Need for Cloud Architectures
Traditional data processing techniques suffer from an array of difficulties. It is difficult to
commission as many machines as needed by an application as well as provision applications
on them. It is tedious to distribute and coordinate tasks on different machines, run processes,
and ensure recovery mechanisms. Also, dynamically scaling up or down can create more
issues than the issues they are intended to resolve. And finally, decommissioning machines is
not as trivial as with traditional architectures. Cloud architectures address all the key difficul-
ties surrounding traditional data processing with large-scale workloads.
The idea is to take advantage of the cloud infrastructure maintained by the service
provider, use provider APIs to provision instances, scale up or down, and decommission
when done.
Search WWH ::




Custom Search