2. www.appistry.com
Cloud Infrastructure…
• Provides access to “Compute” and
“Storage” instances, on-demand
• Based an virtualization technology
• Advantages: Full control of environments
and infrastructure
• Disadvantages: Provide little or no
abstraction
• Examples: Amazon EC2, GoGrid, Amazon
S3, Nirvanix, Linode
3. www.appistry.com
What About the Applications?
After a few hours, the fog of hype starts to lift and it becomes
apparent that the clouds are pretty much shared servers just
as the Greek gods are filled with the same flaws as
earthbound humans. Yes, these services let you pull more CPU
cycles from thin air whenever demand appears, but they can't
solve the deepest problems that make it hard for applications
to scale gracefully. Many of the real challenges lie at the
architectural level, and simply pouring more server cycles on
the fire won't solve fundamental mistakes in design.
4. www.appistry.com
The Challenge:
Cloud Presents New Application Requirements
• Modular, service-oriented
• Unpredictable load
• Dynamic
• Distributed
• Connected
• Multi-tenant
Traditional Application
Infrastructure Wasn’t Built to Meet
the Requirements of Cloud
Applications
5. www.appistry.com
The Solution:
Cloud Platforms
• Abstract applications across individual
cloud servers (“application virtualization”)
• Ensure application QoS: scalability,
reliability, availability
• Provide run-time services for cloud
applications via APIs, e.g. state, workload
management
• Simplify and automate app
deployment and management
Cloud Platforms Provide the
Glue that Allows Cloud
Applications to Fully Leverage
Cloud Infrastructure
6. www.appistry.com
Cloud Layers
Infrastructure vs. Platform
Characteristic Infrastructure
e.g. Amazon EC2
Platform
e.g. Appistry EAF, Google App Engine
Scope Virtual Machine Application
Management Manual; machine-by-machine Automated; single step
Ease-of-use Easy to provision new
infrastructure
Easy to build/migrate cloud-enabled
applications; cut time-to-market
Scalability Create new servers on demand Applications scale linearly
Risk Reduce infrastructure investment Reduce project/development risk
Reliability Reliable infrastructure Reliable applications
Cost Pay only for what you use; use
only what you need
Enable application agility and reduce
development costs
Security Provide secure infrastructure Enable secure applications
7. www.appistry.com
Hosted Cloud Platforms (“PaaS”)
Provides platform benefits, but:
• Focus on single application stack (e.g.
Ruby, Python)
• Lock applications to single cloud
infrastructure provider
• Restricted to available services, e.g.
can’t use SQL compliant DBs
as-a-Service
8. www.appistry.com
Cloud Application Platforms
• Delivered as software
• Used in-cloud or on-premise
• Support standard enterprise software
development stacks (e.g. Java, .NET, C++
via Eclipse, Visual Studio)
• Provide portability across cloud
environments
• Provide essential services such as data
caching and workload management
Cloud App.