Giga spaces value prop - afas - cloud practices

Preview:

Citation preview

Building Applications

for the Cloud -

Challenges & Best Practices

Jeroen Remmerswaal

Tricode Business Integrators

Timing is Everything - Why Now?• Credit crunch means:

• No large upfront investments• Need to do more with the same resources

• Maturity of virtualization technologies• Faster CPUs, memory, disks• Better internet

The Challenges:• Deploying on the cloud introduces new

challenges:• On demand scalability • Reliability • Data security• Deployment, monitoring &

management

Traditional ArchitecturesSimply Don’t Fit Anymore

Business tier

Back-upBack-up

Back-up

Load Balancer

Web Tier

Messaging

Traditional Architectures – See the Problem?

• Hard to install: • Bound to static resources (IPs, disk drives, etc.)

• Separate clustering model for each tier• Hard to maintain• Insecure• Non-scalable

There's a missing link

To take full advantage of the cloud, your application’s architecture needs to change

It needs to be elastic:• Grow (and shrink) as needed, based on

an SLA (such as work load)• But with no downtime, self-heal on

failure, without data- and transaction-loss

• And with a corresponding (predictable) performance improvement

It needs to be memory-based:• No permanent off-premise storage• Not bound to static resources• Bonus: extreme performance• Reliability achieved through memory

replication• Optionally offload data to on/off site

persistent store

It needs to be easy to operate:• Deploying & monitoring on the cloud as

simple and the same as doing it on-

premises• Process should be repeatable• Application should be modular –

update on the fly with no downtime

The Solution – Application Level Virtualization

Users

Load Balancer

Web Processing Units

BusinessProcessing Units

Primaries Backups

GigaSpaces XAP Value Proposition:GigaSpaces XAP Value Proposition:• Linearly scalable and elastic via virtualization Linearly scalable and elastic via virtualization

of the processing, messaging and data tiers of the processing, messaging and data tiers • Secure and ultra fast via in-memory Secure and ultra fast via in-memory

infrastructureinfrastructure• Comprehensive cloud support for the simplest Comprehensive cloud support for the simplest

provisioning, deployment & monitoringprovisioning, deployment & monitoring• Non-intrusive:Non-intrusive:

• Adopts existing programming modelsAdopts existing programming models

• Cross platform & languageCross platform & language

Can Your Application Take the Heat?

Your Server

How can your application How can your application

handle the load ???handle the load ???

Can Your Application Take the Heat?

The Cloud

GigaSpaces XAP will GigaSpaces XAP will

manage, monitor and scale your manage, monitor and scale your

application on the fly on the cloudapplication on the fly on the cloud

Some Practical Steps

Val

ue

Effort

ArchitectureOn-demand provisioning vs. static, peak-based

Parallel Processing vs. client-server

Partitioned virtualized servers vs. central server

Partitioned virtualized servers vs. central server

Savings Examples 7 machines

(10 peak – 3 avg)

90 machines

(100 peak, 10 avg)

6x machines

(SBA/TBA benchmark)

6x machines

(SBA/TBA benchmark)

Additional Benefits

Self-healing

Basic caching

Auto deployment

Automatic failover

Map/Reduce

Async invocation

Location transparency

Commodity HW Low

latency (in-memory)

Fast & Consistent

response time.

Commodity db vs. high-

end

Web TierWeb Tier Remoting Remoting

Messaging Messaging IMDG as System

of Record

IMDG as System

of Record

• If you have a standard J2EE WAR-file, deploy as-is into GigaSpaces

• Fail-over / Self-healing comes out of the box

• Add 'Auto-Scaling' for Scale-Up and Scale-Down

• Add Session-Clustering

Auto-Scale the Web-Tier

• Parallelize work over the cloud

– Move from J2EE Remoting to GigaSpaces remoting

– Giving you fault-tolerant, scalable, distributed remoting

– Parallelize instead of serialize

– Map/Reduce / Master/Worker / JSR223

Remoting on the Cloud

• Use the IMDG as the fault-tolerant messaging bus

– In-memory reliability

– Can be as simple as re-wiring your JMS provider to use GigaSpaces

– Use GigaSpaces Event Containers instead of MDB's

• Benchmarks on the same hardware show 6+ times more throughput

Messaging on the Cloud

• Fulfill your business transactions in memory

– Have (most of) the data available in memory

– Use the database because you want to, not because you have to

– Use the database asynchronously but reliable

• Benchmarks on the same hardware show 6-100 times more throughput

IMDG over the Cloud

• Large UK Telco Company

– Deploying discrete stand alone services in the Cloud

– More cost effective; easier to outsource; enabled by secure service interface

• Large Global Telco Company

– Deploying carrier grade VOIP service to the Cloud

– New SaaS business model; New revenue stream

• Global Media Company

– Using the Cloud to process events for innovative new TV programme

– Cloud makes concept cost effective

• Financial Services Start-up

– Using the Cloud for a trading exchange

– Cloud lowers barrier to entry and makes proposition possible

• Online Gaming Company

– Using the Cloud for testing and scaling

– Able to test large scale user support early / easy on cloud, hard otherwise

Some of GigaSpaces Cloud Users

GigaSpaces Cloud Portal

GigaSpaces Home Page:GigaSpaces Home Page:http://www.gigaspaces.com/http://www.gigaspaces.com/

GigaSpaces XAP Product Overview:GigaSpaces XAP Product Overview:http://www.gigaspaces.com/wiki/display/XAP7/Concepts http://www.gigaspaces.com/wiki/display/XAP7/Concepts

GigaSpaces XAP for the Cloud: GigaSpaces XAP for the Cloud: http://www.gigaspaces.com/cloudhttp://www.gigaspaces.com/cloud