gomez blazing fast cloud best practices

Post on 12-Jan-2015

1.022 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Are you planning to deploy Web applications in the cloud? Will their performance be acceptable? What will you do to make sure?There are a lot of good reasons to deploy applications in a cloud environment — but they are all forgotten if your application is slow or has poor availability. Poor performance results in unhappy, lost customers. Traditional data center techniques for monitoring, measuring, and optimizing Web application performance won’t work in the cloud. There are a new set of best practices that you need to learn to optimize the performance of your cloud-based Web applications.

TRANSCRIPT

Mike Gualtieri - Senior Analyst, Forrester Research

Imad Mouline - CTO, Gomez division, Compuware

Performance In The Cloud: Four Blazing Fast Best PracticesMike GualtieriSenior AnalystForrester Research

June 29, 2010

4Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Performance in the cloud is not a slam

dunk.

5Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Agenda

•Cloud performance challenges

•4 Blazing fast cloud best practices

•Recommendations

6Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Definition: cloud computing

►A standardized IT capability (services, software, or infrastructure) delivered in a pay-per-use and self-service way

7Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Embrace cloud as an emerging platform

8Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Cloud is here to stay because:

• You can scale infrastructure up and down• But, many apps will have to be re-designed to take full advantage

of elastic infrastructure

Time to market

• Easy, self-service access by developers• But, vendor lock-in is possible if you use value-added services

Empowerment

• Economies of scale that few users can match• But, cost effectiveness relies on lease-buy analysis

Cost reduction

• But platforms vary widely and no standards exist

Massive investments by all vendors

9Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Achieving blazing fast Web site performance is more challenging

Modern Web audiences expect more content and functionality

Firms want to provide more content and functionality

IT needs to reduce infrastructure costs

Rising tides of users make scaling more challenging

10Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Cloud computing can help but it is not a slam dunk•Cloud can provide scale on-demand

– Need more instances? Provision them!

•But, cloud infrastructure is largely opaque– You don’t know what hardware virtual machines are

running on

– You don’t know what the network infrastructures looks like

– You don’t know with whom you are sharing

11Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Enterprises cite flexibility and on demand capacity as top reasons to adopt cloud

12Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Security and maturity top list of concerns for IaaS cloud services. What about performance?

Cloud computing isn’t an if, it’s a when

and how

14Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Agenda

•Cloud performance challenges

•4 Blazing fast cloud best practices

•Recommendations

15Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Based upon Forrester’s Blazing Fast Web site performance research•Ongoing research stream dedicated to performance, scale, and fault tolerance resulting in published research and best practices

•Ongoing cloud computing vendor landscape and architecture research

•Constant Web architecture assessments and recommendations for a broad range of eCommerce, social, and media Web properties.

•User experience trends and design best practices research

1. Measure, monitor, and

respond.

17Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Check the performance of your peers at http://benchmarks.gomez.com

18Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Browser performance varies widely

Source: Gomez sampled 160 million pages across several Websites over a 30 day period from broadband users in the United States

Web BrowserPage Load Time

(in seconds)

Internet Explorer 6 9.654

Internet Explorer 7 6.740

Internet Explorer 8 4.831

Firefox 3 5.631

Firefox 3.5 4.424

Chrome 4 2.369

Safari 4 3.132

19Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Cloud performance varies widely

20Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Investigating and resolving incidents is much more challenging in the cloud

•Incident is identified by monitors or by customer feedback

Detect•Lo

g incident including services affected

Report

•Determine the cause if the incident and log actions taken

Investigate

•Escalate if not solved during investigation. (e.g. problem or crisis)

Escalate

•Restore services and log information for later incident review

Resolve

21Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Design and implement a monitoring system to help answer these three questions

1. Is there a problem?

2. Where is the problem?

3. What is the problem?

22Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Best practices: Measure, monitor, and respond•Test and monitor performance from your customer’s perspective.

•Baseline performance metrics with frequent reporting frequency

•Know what elements of your infrastructure are affecting performance.

•Use testing to determine the impact of key changes.

2. Make liberal use of caching.

23Entire contents © 2009 Forrester Research, Inc. All rights reserved.

24Entire contents © 2009 Forrester Research, Inc. All rights reserved.

The user’s distance from the content matters

25Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Achieving blazing fast Web site performance is more challenging

26Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Best practices: Make liberal use of caching•Design your pages to use the browser cache

•Add an edge cache– Akamai, Contendo, Edgecast, and Limelight are

options

– Cloud providers are also offering edge caching services. E.g. Amazon CloudFront, Microsoft Auzure CDN

•Deploy to multiple cloud regions/zones

•Cache application data, sessions, page fragments, and shared application state

3. Architect for elasticity.

28Entire contents © 2009 Forrester Research, Inc. All rights reserved. Source: Animoto (http://animoto.com/)

29Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Steady state of ~40 instances

Launch of Facebook modification

Peak of 5000 instances

Amazon EC2 easily scaled to handle addition traffic

30Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Best practices: Elastic architecture

• Implement a cloud bursting strategy– Automate elasticity

•Using elastic caching platform.

• Isolate functions to scale them separately.

•Mitigate the risk of remote services.

31Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Typical IT Web architecture scales app server tier – not data tier

Relational database

Load balancer

Application server

Application server

Application server

Application server

32Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Elastic caching adds a layer to overcome data bottlenecks

Persistent data store

Load balancer

Cache node

Cache node

Cache node

Application server

Application server

Application server

Application server

33Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Elastic caching platforms Q2 2010

4. Know cloud providers strengths

and weaknesses.

35Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Best practices: Know your cloud provider

•Load and stress test in the cloud– Cloud virtual machines won’t be the same as yours

•Understand the capacity of one instance in the cloud

– Test the impact of cloud bursting

– Test cloud services such as storage (e.g. Amazon S3)

•Test for elasticity– How quickly can you provision new instances?

•Test for performance– Include geography tests

•Continue to monitor the cloud

36Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Cloud performance varies widely

37Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Agenda

•Cloud performance challenges

•4 Blazing fast cloud best practices

•Recommendations

38Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Best practices for performance in the cloud.

1. Measure. Monitor, and respond.

2. Make liberal use of caching.

3. Architect for elasticity.

4. Know the performance strengths and weaknesses of your cloud

provider.

39Entire contents © 2009 Forrester Research, Inc. All rights reserved.

First steps to achieving blazing fast performance in the cloud

•Test performance from your customer’s perspective.

•Assess your current Web architecture to identify bottlenecks.

• Implement caching where it will help.

•Architect for elasticity.

•Load test your application on your cloud provider.

•Deploy to cloud.

•Watch carefully.

40Entire contents © 2009 Forrester Research, Inc. All rights reserved.

Thank you

Mike Gualtieri

+1 617.613.6145

mgualtieri@forrester.com

Twitter: mgualtieri

www.forrester.com

Best Practices For Ensuring Blazing Fast Cloud Applications

Imad Mouline - CTO, Gomez, The Web Performance Division of Compuware

@imadmouline

Web Applications Are Increasingly Composite

By The Numbers

Number of hosts accessed directly by the browser, per user transaction, averaged across 3,000 companies

Measurementcity

Number of hosts per user transaction

Hong Kong 7.56

Beijing 8.57

London 8.59

New York 8.85

Frankfurt 8.87

Amazon EC2 Region Percentage

EC2 Asia Pacific - Singapore 0.002

EC2 US West - Northern California 0.659

EC2 EU - Ireland 2.733

EC2 US East - Northern Virginia 16.194

TOTAL 19.588

Web Applications Are Moving To The Cloud

Percentage of web app transactions that include at least one object hosted on Amazon EC2

1 – Measure, Monitor, and Respond

The Cloud Creates Performance Concerns

The Cloud is opaque & shared Loss of visibility and control - traditional tools don’t apply Others can affect my performance

MajorISP

Local ISP

Mobile Carrier

Internet

Content DeliveryNetworks

3rd Party/Cloud Services

Browsers and devices

Storage

Web Servers

App Servers

DB Servers

Mainframe

Load Balancers

Mobile Components

Network

The Cloud Is Opaque: How do you know if your application is really performing?

The Web Application Delivery ChainMy users

Other users

Other users

Other users

Solution = “Outside-in” customer point of viewCloud

MajorISP

Local ISP

Mobile Carrier

Internet

Content DeliveryNetworks

3rd Party/Cloud Services

Browsers and devices

Storage

Web Servers

App Servers

DB Servers

Mainframe

Load Balancers

Mobile Components

Network

The Cloud Is SharedHow Do You Know It’s Your Issue Or Your Cloud Provider’s?

The Web Application Delivery ChainMy users

Other users

Other users

Other users

Solution = Collective IntelligenceCloud

My app Otherapp

Otherapp

Otherapp

Cloud is shared

Multiple contributors help diagnose issues for everyone

“Measure, Monitor, Respond”

Average response time of reference app transaction across various Cloud providers, measured from several global locations

2 – Make Liberal Use of Caching

Web App Delivery Chain – Bottlenecks Revisited

Natural bottlenecks are also optimization opportunities

Instance

Potential bottlenecks

“Make Liberal Use Of Caching” Validate Caching at the SERVER

Long First Byte times a potential server-side caching opportunity

Geographic Latency – Europe-based

Response time for sample transaction of reference application hosted on Amazon EC2 Europe West (Dublin), as measured from major European cities

Geographic Latency – US-based

Response time for sample transaction of reference application hosted on Amazon EC2 US East (Virginia), as measured from major US cities

“Make Liberal Use Of Caching” - Validate Caching at the EDGE

“Make Liberal Use Of Caching” - Validate Caching at the BROWSER

Safari 4.x

Internet Explorer 7.x

Internet Explorer 8.x

Firefox 3.xChrome

3 – Architect For Elasticity

“Architect For Elasticity”

Cloud makes it easier to use elastic architecture strategies

Elasticity can come at a high expense

Make sure to balance performance and cost

Instance

Potential bottlenecks

The Cloud Offers Unique Opportunities For Optimization

Domain sharding is a common performance optimization

In traditional hosting environment, it came at a price

The Cloud, with proper planning, can provide sharding for free

Bucket 1

Bucket 2

Potential bottleneck

The Cloud Offers Unique Opportunities For Optimization

Better performance, for little work, at no extra cost?

Potential bottleneck

The Cloud Is Prepared For The Unknown

Instance@ capacity

Faced with constraints anywhere upstream from the browser, the cloud offers unique opportunities to expand capacity.

InstanceDynamically provisioned

The Cloud Helps You Prepare For The Unknown

Impact Of Optimization Across Browsers & Mobile Devices

Yesterday’s optimizations must be constantly revalidated Sharding fails to show benefit on modern browser Sharding shows a substantial performance hit on mobile

devices such as the iPad

Major News SiteSharded

(response time = seconds)

Major News SiteNon-Sharded

(response time = seconds)

Internet Explorer 7 3.917 3.995

Firefox 3.5 4.033 3.797

iPad 24.470 23.821

4 – Know the Performance of Your Cloud Provider

“Know Your Cloud Provider” - Performance

Average response time of reference app transaction across various Cloud providers, measured from several global locations

“Know Your Cloud Provider” – Availability

Aggregate average availability of reference app on Opsource, Amazon EC2 US East, Amazon S3, GoGrid & Google AppEngine measured from global backbone locations

Nov-05 Dec-05 Jan-06 Feb-06 Mar-06 Apr-06 May-0696.500

97.000

97.500

98.000

98.500

99.000

99.500

100.000Average Cloud Availability

Ava

ilabi

lity

(%)

Best Practice: Define your goals and build a plan

Align goals across your organization Why are we moving to the cloud?

Common goals include:

1. Additional Capacity – How much capacity do we need during normal and peak times?

2. Improved End-User Experience – What performance goals are we trying to deliver against?

3. Greater Elasticity – How quickly can the provider we select ramp up to meet our needs?

4. Flexible Bursting – How fast do we need to be able to access additional capacity?

If only there was a button to push!

Best Practice: Performance Testing Cloud Capabilities

Evaluate vendors based on your goals…

CapacityTest vendors to 15-20% past estimated capacity goals

ElasticityBaseline end-user performance before & after testing

Test during pre-deployment and in production

Ramp elasticity testing to peak levels

BurstabilityIsolate the cloud elements from other infrastructure to test

Test the “failover process”

Mike Gualtieri - Senior Analyst, Forrester Research

Imad Mouline - CTO, Gomez division, Compuware

top related