SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Deep dive into Fastly
Piotr Benetkiewicz
piotr@couponfollow.com
What is
Edge computing provider:
● CDN
● Varnish implementation
● Image Optimization
● ESI
● WAF
● and more
What is
● Founded in 2010, self-funded and profitable
● We help shoppers save money through best coupons, deals discovery and cashback
● Our two primary products are CouponFollow and Cently
● We are a global, remote team of close to 50 engineers
● We support learning culture and follow the DevOps way
● Currently looking for a Technical Product Manager for our Coupons platform team
Who am I
● Coding in .NET for 16 years
● Climber
● Lego collector
● F1 fan
Caching basics
● Cache Key: Host + URL
● Pages setting cookies are not cached
● TTL: 3600s by default
Cache control
● Fastly UI
● Varnish snippets
● Headers
Cashing basics cont.
● Surrogate-Control
● Vary Scenarios
○ Desktop vs. Mobile
○ Compression: Brotli, gzip, deflate…
○ Experiments, A/B tests
● Things to consider
○ Normalization of UA
○ Fastly supporting API
Vary: User-Agent
Stale content
Fresh (300s)
Serving content from cache
Stale (30s)
Serving stale content up to 30s while fetching fresh content from the origin
Error (86400s)
Serving stale content up to 24h if backend responds with 500
Cache-Control: max-age=300, stale-while-revalidate=30, stale-if-error=86400
VCL and CoE
● Implementation of Varnish Configuration Language
○ Abstraction over request->response processing
○ Additional APIs: client.platform, client.geo, etc.
● ACL
● Edge dictionaries
VCL and CoE
Image optimization
● Image transformation on edge
● Requires additional setup and support ticket
● https://io.tacolabs.com/assets/beef-soft-tacos.jpg?width
=250&quality=90
ESI
● Edge Side Includes
● W3C
○ compose from fragments
○ cacheability separately associated
<esi:include src="https://couponfollow.com/esi/foo" />
Any Questions?
Let us know if you have any questions!
Piotr Benetkiewicz
piotr@couponfollow.com
Thank you.
Piotr Benetkiewicz
piotr@couponfollow.com

Weitere ähnliche Inhalte

Ähnlich wie Deep dive into Fastly

SANDcamp 2014 - A Perfect Launch, Every Time
SANDcamp 2014 - A Perfect Launch, Every TimeSANDcamp 2014 - A Perfect Launch, Every Time
SANDcamp 2014 - A Perfect Launch, Every Time
Jon Peck
 

Ähnlich wie Deep dive into Fastly (20)

TYPO3 responsive bootstrap basepackage T3ee presentation 2013 romania
TYPO3 responsive bootstrap basepackage T3ee presentation 2013 romaniaTYPO3 responsive bootstrap basepackage T3ee presentation 2013 romania
TYPO3 responsive bootstrap basepackage T3ee presentation 2013 romania
 
How to build a website that works without internet using angular, service wor...
How to build a website that works without internet using angular, service wor...How to build a website that works without internet using angular, service wor...
How to build a website that works without internet using angular, service wor...
 
Dynatech presentation for TSI Career Day
Dynatech presentation for TSI Career DayDynatech presentation for TSI Career Day
Dynatech presentation for TSI Career Day
 
Android Study Jam
Android Study Jam Android Study Jam
Android Study Jam
 
Tools and libraries for common problems (Early Draft)
Tools and libraries for common problems (Early Draft)Tools and libraries for common problems (Early Draft)
Tools and libraries for common problems (Early Draft)
 
Web App Prototypes with Google App Engine
Web App Prototypes with Google App EngineWeb App Prototypes with Google App Engine
Web App Prototypes with Google App Engine
 
Devoxx : being productive with JHipster
Devoxx : being productive with JHipsterDevoxx : being productive with JHipster
Devoxx : being productive with JHipster
 
JIO and WebViewers: interoperability for Javascript and Web Applications
JIO and WebViewers: interoperability  for Javascript and Web ApplicationsJIO and WebViewers: interoperability  for Javascript and Web Applications
JIO and WebViewers: interoperability for Javascript and Web Applications
 
Drools & jBPM Workshop Barcelona 2013
Drools & jBPM Workshop  Barcelona 2013Drools & jBPM Workshop  Barcelona 2013
Drools & jBPM Workshop Barcelona 2013
 
#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPR#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPR
 
Multiplier Effect: Case Studies in Distributions for Publishers
Multiplier Effect: Case Studies in Distributions for PublishersMultiplier Effect: Case Studies in Distributions for Publishers
Multiplier Effect: Case Studies in Distributions for Publishers
 
SANDcamp 2014 - A Perfect Launch, Every Time
SANDcamp 2014 - A Perfect Launch, Every TimeSANDcamp 2014 - A Perfect Launch, Every Time
SANDcamp 2014 - A Perfect Launch, Every Time
 
Big data @ Hootsuite analtyics
Big data @ Hootsuite analtyicsBig data @ Hootsuite analtyics
Big data @ Hootsuite analtyics
 
Developing word press professionally
Developing word press professionallyDeveloping word press professionally
Developing word press professionally
 
Go frugal with web services
Go frugal with web servicesGo frugal with web services
Go frugal with web services
 
Designing salesforce solutions for reuse - Josh Dennis
Designing salesforce solutions for reuse - Josh DennisDesigning salesforce solutions for reuse - Josh Dennis
Designing salesforce solutions for reuse - Josh Dennis
 
Hardening Plone, a military-strength CMS
Hardening Plone, a military-strength CMSHardening Plone, a military-strength CMS
Hardening Plone, a military-strength CMS
 
Design Summit - Technology Vision - Oleg Barenboim and Jason Frey
Design Summit - Technology Vision - Oleg Barenboim and Jason FreyDesign Summit - Technology Vision - Oleg Barenboim and Jason Frey
Design Summit - Technology Vision - Oleg Barenboim and Jason Frey
 
Cost-Effective Two-Factor Authentication
Cost-Effective Two-Factor AuthenticationCost-Effective Two-Factor Authentication
Cost-Effective Two-Factor Authentication
 
ORusu_Apps
ORusu_AppsORusu_Apps
ORusu_Apps
 

Mehr von Piotr Benetkiewicz (6)

So, you wanna build a SSO
So, you wanna build a SSOSo, you wanna build a SSO
So, you wanna build a SSO
 
.NET compiler platform codename Roslyn
.NET compiler platform codename Roslyn.NET compiler platform codename Roslyn
.NET compiler platform codename Roslyn
 
Introduction to GIT
Introduction to GITIntroduction to GIT
Introduction to GIT
 
Automatic system tests of web applications
Automatic system tests of web applicationsAutomatic system tests of web applications
Automatic system tests of web applications
 
Linq and Orcas
Linq and OrcasLinq and Orcas
Linq and Orcas
 
NET flow
NET flowNET flow
NET flow
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهله
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Deep dive into Fastly

  • 1. Deep dive into Fastly Piotr Benetkiewicz piotr@couponfollow.com
  • 2. What is Edge computing provider: ● CDN ● Varnish implementation ● Image Optimization ● ESI ● WAF ● and more
  • 3. What is ● Founded in 2010, self-funded and profitable ● We help shoppers save money through best coupons, deals discovery and cashback ● Our two primary products are CouponFollow and Cently ● We are a global, remote team of close to 50 engineers ● We support learning culture and follow the DevOps way ● Currently looking for a Technical Product Manager for our Coupons platform team
  • 4. Who am I ● Coding in .NET for 16 years ● Climber ● Lego collector ● F1 fan
  • 5. Caching basics ● Cache Key: Host + URL ● Pages setting cookies are not cached ● TTL: 3600s by default Cache control ● Fastly UI ● Varnish snippets ● Headers
  • 6. Cashing basics cont. ● Surrogate-Control ● Vary Scenarios ○ Desktop vs. Mobile ○ Compression: Brotli, gzip, deflate… ○ Experiments, A/B tests ● Things to consider ○ Normalization of UA ○ Fastly supporting API Vary: User-Agent
  • 7. Stale content Fresh (300s) Serving content from cache Stale (30s) Serving stale content up to 30s while fetching fresh content from the origin Error (86400s) Serving stale content up to 24h if backend responds with 500 Cache-Control: max-age=300, stale-while-revalidate=30, stale-if-error=86400
  • 8. VCL and CoE ● Implementation of Varnish Configuration Language ○ Abstraction over request->response processing ○ Additional APIs: client.platform, client.geo, etc. ● ACL ● Edge dictionaries
  • 10. Image optimization ● Image transformation on edge ● Requires additional setup and support ticket ● https://io.tacolabs.com/assets/beef-soft-tacos.jpg?width =250&quality=90
  • 11. ESI ● Edge Side Includes ● W3C ○ compose from fragments ○ cacheability separately associated <esi:include src="https://couponfollow.com/esi/foo" />
  • 12. Any Questions? Let us know if you have any questions! Piotr Benetkiewicz piotr@couponfollow.com