Maintaining the Balance: Getting the Most of Your CDN by Johannes Eckerdal, Product Specialist, IKEA
Join Johannes Eckerdal, CDN Product Specialist of Ikea for an informative supersession where he will discuss how to transform your Content Delivery Network into an Experience Delivery Network and other topics including: Why the Edge matters, Considerations around CDN agnostic versus CDN dependent approaches, How to extract the most of your CDN
Akamai Edge is the premier event for Internet innovators, tech professionals and online business pioneers who together are forging a Faster Forward World. At Edge, the architects, experts and implementers of the most innovative global online businesses gather face-to-face for an invaluable three days of sharing, learning and together pushing the limits of the Faster Forward World. Learn more at: http://www.akamai.com/edge
Edge 2014: Maintaining the Balance: Getting the Most of Your CDN with IKEA
1. Maintain
the balance
To get the most out of your CDN…
Johannes Eckerdal
8 October 2014
2. Headlines of today
IKEA on the world wide web...
The Experience Delivery Network
Maintaining the Balance
Property Mgr rocked the world
Examples from Reality
4. IKEA has been
present on the
Internet since
1997 and we are
now building our
5th generation
web platform.
5. From Notepad web to…
...a complex bastard with 170 Million visits in August 2014. Present in 46+
countries whereof 1/3 with eCommerce in some flavor.
5
6. 6
IKEA today use
AQUA Ion and
KONA to secure
delivery of +150
domains
8. Experience
Delivery Network
deliver content.
deliver an Experience.
deliver the Brand.
create a value. WE
To use the CDN as an EDN we need to do more on the
Edge…
9. Some things make sense to do on
the Edge
Visitor Characteristics Check
• GEO, Device, Customer
Border Control
• Minimize Attack Window
• Minimize Attack Window
• Minimize Attack Window
• Kill the zombies
• Black Hole
• Lock the door
Traffic Control
• Redirect
• Rewrite
• Origin this or that
• Service Adaption for Reality degradation mgmt
• Network status
• Browser capabilities
10. Minimize the Attack window
Cache
Res ipsa loquitur…
(Unfortunately a bigger
issue than we normally
imagine)
Ignore QS
Ignore QS by default and
include it where it’s
necessary
Deny POST
Deny POST method by
default and allow it only
where it’s absolutely
necessary
Ignore Case
Ignore Case by default and
activate it where it’s
necessary
BOT strategy
Why should bots be allowed
to take resources from real
users?
Even the simplest Make Sense Rule complicates life for the developer
11. • Using functionality on the
Edge impacts Development
• The CDN will not become the
EDN unless its an
integrated component in
your complete stack
• Using functionality on the
Edge must be done with
Care
13. Content Experience
Stand-alone
Simple
Pure
Nice-to-have
CDN Agnostic CDN Dependent
Integrated
Vendor lock-in
Vendor independence
Complex
Less secure More secure
Vendor dependency
Usage of functionality
Usage of what we for
14. An example of approach…
+90% 12%
EDN approach, but with maintained
balance. There are plenty of more
functionality we could use…
Managed service.
Traditional CDN approach.
16. • IaaS
• DevelopmentaaS
• SupportaaS
• ServiceaaS
• RequirementaaS
• ResponsibilityaaS
• In the end of the day –
does it matter who to
blame when your
brand goes down?
• How to maintain the
balance if we buy CDN
as a Managed Service?
17. IKEA CDN
Competence Centre
We have tried a Managed Service of the Managed Service…
We have tested a Do-it-yourself approach…
We have settled a
Competence
& Support
team.
*
CDN
* The name used in this presentation is fiction, and should not be
confused with the internal organizational name.
18. Monitoring SIRT
CDN
Competence
& Support
CDN
CDN
Application
Application
Application
Network
Application
Not only Support
and Competence,
BUT
Requirements on
Development
Strategy Budget
23. Web Service delivery
Problem
There is a trillion permutations of the same things... Too low cache hit ratio,
too high response times, origin capacity constraint.
/product/1,2,3,4,5/ and /product/2,3,4,5/ are almost the same.
/product/1,2,3,4,5/ and /product/5,4,3,2,1/ same-same, but different…
Solution
Use ESI to itemize and assembly at the edge. Cache items individually.
Balance maintained
Yes, the functionality is not changed. We just get the most out of the CDN.
23
24. 24
PM implementation
3344 lliinneess
From advanced MD
override in CM, created by
PS, to a few rules we
created outselves in PM.
25. Redirect engine
Problem
Redirects kill user performance. Redirect cache hitRatio is too low.
Solution
1000s of redirects maintained in origin Content Mgmt System. Instead of
deploying the list of RewriteRules to origin webServers, we deploy the list to
Akamai and use ESI to loop through it and create the redirect on the fly – at
the Edge. Immediate activation.
Balance maintained
Yes, the functionality is not changed.
Works even better for Mobile Detection & Redirect…
...where mapping between m. and www. is dynamic.
25
26. 26
PM implementation
tthhee lliisstt
From an advanced
configuration (not even
CM) to a super-simple
PM version.
27. The exception…
Obviously it was too good to be true. A redirect is not a redirect.
The redirect depends…
28. Functional clusters
Problem
Out-of-the-box does not scale. Common backend for all markets. Not
possible to optimize for optimal performance – always least common
denominator.
Solution
Functional Clusters instead of Market based Clusters. URL-routing of traffic
done already at the Edge. Each cluster optimized for its task, and issues are
isolated to a higher degree.
Balance maintained
Yes, the functionality is not changed. It may easily be done by URI-routing
e.g. in LoadBalancer.
28
29. 29
PM implementation
From a mess… with a
mixture of CM Basic
Rules and advanced MD
override...
…to direct control and
visibility.
Easily changed and
activated.
30. Regex rewrites
Usage scenario
For SEO reasons the same image/document have different paths.
Problem
Implementation of Rewrite rules differs in origin and at CDN. Different
methods has previously been used to solve the same thing.
Solution
Property Manager! Modify path by regex is what we use at origin, and in all
test systems. Now we can replicate this 1:1 in Akamai.
Balance maintained
Yes, now we are in control ourselves.
30
/image/billy-bookshelf-12345.jpg = /image/billy-bokhylla-12345.jpg
31. From origin code to PM
31
Replication of Code – Replication of Test – Replication of Function.
34. There are some dark
clouds on the PM sky…
The more you get – the
more you want
PPeerrffoorrmmaannccee
BBuuggss
”Help”
Section
MD XML generated far
more complicated
Debug Tools
missing