34
Why Load & Performance Testing the Cloud? Sebastian Cohnen (@tisba)

Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Why Load & Performance Testing the Cloud?

Sebastian Cohnen (@tisba)

Page 2: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

• Focus on web performance and architectures

• 6+ years consulting and development

• Performance engineering & regular execution of dynamic performance analysis for customers

EHLO!

Sebastian Cohnen (@tisba)CEO & CTO StormForger.com

Page 3: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

StormForger.com

• SaaS Product & Consulting on Performance and Load Testing

• We take care of the heavy lifting and pave the way for regular performance assessments

• Free Preflight Tests while in Beta™

Page 4: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Load & Performance Testing

Page 5: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

–Wikipedia

“In software engineering, performance testing is in general, a testing practice performed to

determine how a system performs in terms of responsiveness and stability under a particular

workload.”

Page 6: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Performance Testing

• A category of non-functional testing methods

• Induce a well defined workload

• Observe the systems behavior

Page 7: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

There are many forms…• Load Testing

• Stress Testing

• Spike Testing

• Soak Testing

• Configuration Testing

Page 8: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Whatever you do…

Page 9: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •
Page 10: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Performance

Page 11: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

≠ Scalability

Performance

Page 12: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Performance vs Scalability

Performance"1 instance can handle 250 API requests per second with p99 at 50ms…"

Scalability"10 instances can handle 2500 API requests per second with p99 at 50ms…"

Page 13: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

You maybe want both!

• Performance is important, because it defines a baseline for quality and capacity. It's also a measurement on efficiency.

• Scalability is important, because it will tell you if and how efficiently you can grow capacity.

Page 14: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

The Cloud

• IaaS, PaaS, …

• Automatization

• On-Demand

• Scaling

http://geek-and-poke.com/

Page 15: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Back to Topic…

Page 16: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Why should I care?

Page 17: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Why should I care?…about load and performance testing the cloud?

Page 18: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

"The Cloud is Scalable!"*…as long as I can afford it to be…

*famous last words…

Page 19: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Scaling ApplicationsScaling Resources

Page 20: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Scaling Applications

Scaling Resources≠

Page 21: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Understanding

Page 22: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

You need to understand…

• Your (Distributed, μService, …) Application

• Your Software Architecture

• Cloud Environment

• Used Services and their behavior

Page 23: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Complexity has notsimply vanished!

Complexity has notsimply vanished!

Page 24: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Performance Testing…and some more reasons for testing!

Page 25: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Configuration Testing

• Auto Scaling

• Throughput Provisioning (EBS, DynamoDB, …)

• Instance Types for EC2/RDS/EC/ES/…

• ELB -> Web Server -> App Server -> Backend Services -> …

Page 26: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Performance Testing

• Determine speed, throughput, capacity, … of your system

• Figure out the capacity per resource

Page 27: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Scalability Analysis

• How does my capacity increases with additional resources?

• Requirement for Capacity Planning and Cost Estimation

Page 28: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Load Testing

• What happens when I'm on hacker news? (Spike Testing)

• How does your system and environment behave under serious stress? (Stress Testing)

• What happens over longer period of times? (Soak Testing)

Page 29: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Availability & Resiliency

• (Zero-Downtime) Deployment under load

• Understanding failure scenarios

• Failover mechanisms

Page 30: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Proof of Concept

• Design an Architecture on AWS

• Implement a Prototyp

• (Discuss it with AWS Solution Architects)

• Validate! Run Tests, observe, learn and improve!

Page 31: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Embrace the Cloud!

• Multiple, scalable test environments used to be cumbersome and expensive

• Use automatization wherever you can:

• Services, Infrastructure, Servers, Code, Data…

Page 32: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

One more thing…

Page 33: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Is this different than it used to be with

"traditional hosting"?

Page 34: Why Load & Performance Testing the Cloud?aws-de-media.s3.amazonaws.com/images/_Berlin_Loft...•Focus on web performance and architectures • 6+ years consulting and development •

Thanks! Questions?

Sebastian Cohnen (@tisba)[email protected]