Slide 1

Slide 1 text

re:Invent in Review

Slide 2

Slide 2 text

Some Disclaimers • This is mostly going to be frontend focused. • Las Vegas is literally the worst place on the planet. • We're going to start from the most actionable and then head to the more abstract. • I'd much prefer this to be a conversation and not make it all the way through these slides. So, interrupt me as much as you'd like.

Slide 3

Slide 3 text

The Goal • Architecture is working on documentation that bridges the larger technology strategy to tactical things that each team can do. • My ask: as we discuss some of these technologies, you think about what problems can we solve for ourselves.

Slide 4

Slide 4 text

CloudFront Origin Failover • For a while, supporting multi-region has been a "to-do" item in that shared blueprint. • If one region fails, CloudFront will automatically fall back to the second one. • We could set up cross-region republication on the buckets, so that they're always in sync. • Bad news: last time we checked, Terraform support hand't landed yet.

Slide 5

Slide 5 text

CloudFront Developer Guide on Multi-Region Failover

Slide 6

Slide 6 text

Using WebSocket with CloudFront Distributions • There is also support from API Gateway for WebSockets. • This one is more of a two-part plan, since we'll need to have some support on the server-side. • But, for some of the asynchronous APIs this could very-well be a pattern that we choose to advocate for.

Slide 7

Slide 7 text

Not New, But Still Important • Implementing a shared solution to our client-side routing issues. • "Measure twice, cut once." • We don't have to • Fixing out security headers as a pattern. • Moving stuff out of the client. • "A bit of backends for frontends."

Slide 8

Slide 8 text

A Brief Re-Introduction to Lambda@Edge

Slide 9

Slide 9 text

Some Use Cases • Redirecting in the event that the cookie isn't valid. • Moving our expensive code (e.g. parsing modules) out of the client when possible

Slide 10

Slide 10 text

Where Do We Need to Focus • We're going to need to up our Terraform chops • Steven's guide to Terraform • "Ephmeral-ish" environments for mutli-team monorepos (e.g. Mako and MC)

Slide 11

Slide 11 text

Recommended Viewing • Josh's list of videos

Slide 12

Slide 12 text

Recommended Reading • Cloudfront Origin Failover • Documentation • Using WebSocket with CloudFront Distributions • Managing Lambda@Edge and CloudFront deployments by using a CI/CD pipeline • Leveraging Lambda@Edge for AdTech: Cookie Syncing at the Edge

Slide 13

Slide 13 text

Recommended Reading (Continued) • Dynamically Route Viewer Requests to Any Origin Using Lambda@Edge • Adding HTTP Security Headers Using Lambda@Edge and Amazon CloudFront • Resizing Images with Amazon CloudFront & Lambda@Edge | AWS CDN Blog • Lambda@Edge Design Best Practices

Slide 14

Slide 14 text

Recommended Reading (Continued, continued) • Reducing Latency and Shifting Compute to the Edge with Lambda@Edge • Serving Private Content Using Amazon CloudFront & AWS Lambda@Edge • Global Data Ingestion with Amazon CloudFront and Lambda@Edge • Building a Serverless Subscription Service using Lambda@Edge