Edge computing offers a plethora of use cases for companies to serve their customers online. Akamai has been a pioneer in this field, with their global CDN network delivering super fast application performance and localized content personalization for many years. In this blog post, we cover some of the geolocation based content personalization use cases of edge computing, powered by Akamai's EdgeWorkers platform.


This post is derived from the original post published by Ari Weil on Akamai blog.

Personalization is an important part of a modern user experience. Displaying local inventory and offers is table stakes, and yet not always easy to do. The same goes for fetching data from the nearest point of presence (POP) data center for a web application. Geolocation powers these use cases. For example, with the knowledge of customers geolocation, an automobile marketplace tailors inventory and information, and shows market-value pricing, ratings, and reviews, as well as sales information relevant to the customer locality. 

As simple as it sounds, retrieving this data requires many calls to the web application. When a user accesses the app, a geolocation microservice allows the app to filter what it shows. The challenge was that these calls added latency. The geolocation microservice made pages load between 500 milliseconds and 2 seconds slower. Shifting the microservice to Akamai EdgeWorkers saved 99% of the round-trip time. The microservice now returns geolocation data in 20 milliseconds.

EdgeWorkers injects the geolocation data via a cookie at the edge. It works by adding regional data in the request header. This provides twofold savings. First, by eliminating the initial round trip to retrieve the geolocation data. Then, by eliminating a separate request to retrieve extra information for the region. This makes the application more efficient. Fewer calls to the cloud improved response times and decreased cloud costs. You can also do something similar with a separate geolocation service call.

Use Case #1 - Is it me you're looking for: improve personalization

Search engine optimization is a dark art. It is usually misunderstood and maligned. A North American sporting goods retailer struggled to balance SEO with performance. It had two goals: increase search engine value and decrease cloud infrastructure costs. 

Like most B2C companies, the company attracts and retains customers using personalization. It runs marketing campaigns with individualized URLs that contain UTM codes for tracking and analytics. You may have noticed strings like "?utm_source=blog&utm_medium=email&utm_campaign=member" if you followed a link from a promotional email. These URL codes are great for marketers, but not for cache performance. To enable marketing, every URL must be distinct. To optimize cache performance, URLs must be consistent. To keep users engaged, pages must load quickly. 

To address this, the customer wrote a JavaScript function to improve matches. The function controls the cache key, ignoring UTM codes. To illustrate, a URL like "www.retailer.com/offers/promo_page?utm_source=blog&utm_medium=email&utm_campaign=member" gets matched as "www.retailer.com/offers/promo_page." This improves cache hit rates. The function then adds back the UTM codes to maintain user behavior analytics.

A people-based marketing platform did something similar. That company's promotional emails include many contextual attributes to deliver custom content. The marketing platform architecture uses different microservices that live on different cloud provider platforms. The email attributes determine where to route requests and what content to return. By shifting that logic to Akamai EdgeWorkers, the URLs are now decoded and routed from the edge. This improves responsiveness for the user and eliminates extra requests to the origin.

Use Case #2 - Privacy please: complying with regulations

GDPR, CCPA, APPI, and other user privacy laws have put a spotlight on compliance efforts. Businesses across the globe have accelerated their compliance efforts to avoid penalties. One global media measurement and analytics company needed to manage user content. The first order of business was tracking consent data for its publishers' users.

The company used the Interactive Advertising Bureau's (IAB's) Transparency and Consent Framework (TCF 2.0), an industry-standard for sending and verifying user consent. It designed a microservice to track user consent for activity tracking. Akamai EdgeWorkers allowed the company to build this as an edge-native microservice. When the user consents to tracking, state-tracking cookies are added to the session. This allows the company to personalize the user's experience. If the user does not consent, the cookie is discarded, and the user has a more general experience. Read more in this blog post, where you can also find links to the source code.

Use Case #3 - Been around the world: what time is my connection?

Anyone who has flown has had this problem. You know your scheduled flight time. You download the airline app to get notifications. You check flight trackers and the airport website to verify. When you get to the airport, you check flight and gate information on the screens. And once you are at the gate, you look at the updates at the kiosk. More often than not, the information does not match.

Airlines face many challenges when sending and synchronizing critical data. Inconsistent internet and network speeds make real-time data coordination a real issue. Conflicting flight status information confuses passengers and increases demand for customer service resources. More accurate and timely information distribution increases customer satisfaction and decreases costs.

A global airline approached Akamai to help solve this problem. It realized that standard web applications could not overcome the data synchronization challenge -- there are too many applications to keep in sync. Also, web applications stay up to date by requesting information on a schedule (or in response to an event). For example, have you ever played with your phone's email client configurations? There is a setting for pull versus push message delivery. Pull tells the app on your phone to request updates from the mail server. Push tells the mail server to send you information. You configure the timing of the push or pull based on how often you expect to get new mail. The problem with flight information is the number of applications. The mobile app, airport screens, websites, and gate kiosks pull at different intervals. So flight delays will show up differently to each application.

The airline in question used Akamai Edge Cloud to synchronize global flight information. Edge Cloud uses Message Queuing Telemetry Transport (MQTT), versus HTTP-like web applications. With MQTT, we enable publisher-subscriber communication. This delivers three primary benefits:

  1. 1
    Messages are smaller and delivered faster and more reliably.
  2. 2
    Information is more secure because it is only sent to known subscribers.
  3. 3
    Every device that displays flight information receives it at the same time.

Edge Cloud provides reliable automated message delivery and notification in real-time. To learn more, read this blog post about Edge Cloud.

If you are looking for more code examples, we have been publishing a variety of use cases in a GitHub repository that you can engage with today.

About the author 

Radiostud.io Staff

Showcasing and curating a knowledge base of tech use cases from across the web.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
TechForCXO Weekly Newsletter
TechForCXO Weekly Newsletter

TechForCXO - Our Newsletter Delivering Technology Use Case Insights Every Two Weeks