Transcript
Page 1: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

November 14, 2014 | Las Vegas, NV

Shaun Pearce, Solutions Architect, AWS

Zachary Stevens, Chief Architect, Elastera

Page 2: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 3: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 4: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

40%

40% of shoppers abandon a site that

takes more than 3 seconds to load

Source: blog.kissmetrics.com/loading-time/

Page 5: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

79%

79% of shoppers who are dissatisfied with

site performance are less likely to buy from

the same site again

Source: blog.kissmetrics.com/loading-time/

Page 6: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

November

Page 7: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

SALEENDS SOON

visit example.com/sale

Page 8: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 9: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 10: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 11: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 12: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 13: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 14: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 15: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

http://youtu.be/xbuiIwEOCAs

Page 16: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Bottleneck

Page 17: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Bottleneck

Page 18: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 19: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 20: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento instance

Master Slave Master Slave Master Slave

Page 21: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Bottleneck

Page 22: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 23: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Bottleneck

Page 24: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 25: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 26: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 27: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 28: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 29: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 30: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 31: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 32: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 33: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 34: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

Magento

10.0.1.1

10.0.1.2

10.0.1.3Internal

load balancer

Magento

Magento

User External

load balancer

default.vcl

example.us-east-1.elb.amazonaws.com

Page 35: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Varnish

HTTP cache server (10.0.0.1)

10.0.1.1

Magento

Internal

load balancer

User External

load balancer

default.vcl

10.0.1.1

Page 36: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Varnish

HTTP cache server (10.0.0.1)

Magento

Magento

Magento

10.0.2.3

10.0.2.4

10.0.2.5

User External

load balancer

default.vcl

10.0.2.3

10.0.2.4

10.0.2.5

Page 37: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Varnish

HTTP cache server (10.0.0.1)

Magento

Magento

Magento

User External

load balancer

10.0.2.3

10.0.2.4

10.0.2.5

default.vcl

10.0.2.3

10.0.2.4

10.0.2.5

10.0.2.6

Page 38: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish Nginx

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 39: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 40: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish Nginx

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 41: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 42: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 43: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 44: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 45: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 46: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 47: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 48: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

HTTP cache server (10.0.0.1)

Varnish

default.vcl

localhost:8080

User External

load balancer

Magento

10.0.1.1

10.0.1.2

10.0.1.3

Nginx

Internal

load balancer

Magento

Magento

nginx.conf

example.us-

east-

1.elb.amazonaw

s.com

Page 49: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 50: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 51: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 52: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 53: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 54: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

SaaS BEST OF BOTH DIY

No headaches

Predictable cost

Lower TCOHeadaches

Spiraling cost

High TCO

Renting

Constraints

Ownership

Freedom

Ownership

Freedom

Less headaches

Lower Cost

Page 55: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

RUN

MANAGE

EVOLVE

Page 56: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Availability Zone Availability Zone

Magento Admin Primary Read Rep

Auto Scaling groupMagento MagentoMagento Magento MagentoMagento Media

CDN

Static

CDN

Media

S3

Page 57: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 58: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 59: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Page 60: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Page 61: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Page 62: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Magento Admin

Primary

CloudFront Amazon S3

Auto Scaling group

Magento MagentoMagento

Page 63: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

QUALITY from code

Page 64: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

log_bin_trust_function_creators

Page 65: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 66: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 67: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 68: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 69: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 70: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

• local.xmlConfiguration

• Magento codeWebsite

• Apache, PHP

• Chef, NewRelic

System software

• Amazon LinuxBase OS

Page 71: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 72: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

• local.xmlConfiguration

• Magento codeWebsite

• Apache, PHP

• Chef, NewRelic

System software

• Amazon LinuxBase OS

Page 73: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 74: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

PROACTIVELY

Page 75: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 76: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

• local.xmlConfiguration

• Magento codeWebsite

• Apache, PHP

• Chef, NewRelic

System software

• Amazon LinuxBase OS

Page 77: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

• local.xmlConfiguration

• Magento codeWebsite

• Apache, PHP

• Chef, NewRelic

System software

• Amazon LinuxBase OS

Page 78: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento Magento Admin

Auto Scaling group

Magento Magento

Live

Deploy

server

Staging

Developer Deploy

bucket

Page 79: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento Magento Admin

Auto Scaling group

Magento Magento

Live

Deploy

server

Staging

Developer Deploy

bucket

Page 80: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento Magento Admin

Auto Scaling group

Magento Magento

Live

Deploy

server

Staging

Developer Deploy

bucket

Page 81: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

PUSH

Page 82: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

where are you

Page 83: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

server

Magento Admin

Auto Scaling group

Magento Magento

Staging

Developer

Page 84: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

serverDeveloper

Magento Admin

Auto Scaling group

Magento Magento

Staging

Page 85: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

UPGRADE

Page 86: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

serverDeveloper

Magento Admin

Auto Scaling group

Magento Magento

Staging

Page 87: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

serverDeveloper

Magento Admin

Auto Scaling group

Magento Magento

Staging

Page 88: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Note

Page 89: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 90: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

serverDeveloper

Magento Admin

Auto Scaling group

Magento Magento

Staging

Page 91: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

Magento Admin

Auto Scaling group

Magento Magento

Deploy

bucket

Live

Deploy

serverDeveloper

Magento Admin

Auto Scaling group

Magento Magento

Staging

Page 92: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014
Page 93: (WEB304) Running and Scaling Magento on AWS | AWS re:Invent 2014

http://bit.ly/awsevals


Top Related