Shalom Carmel, CIO @ GlobalDots
19.04.2022
image 2 Min read

A CDN requires an origin server, which can be a S3 bucket. s3-trigger-purge-cdn are python scripts that run as Lambda functions, and are triggered by file uploads to the bucket. Once triggered, the Lambda function will attempt to purge the old file from the CDN cache. Currently supported CDN vendors:

  • Akamai
  • Cloudflare
  • Edgecast
  • Fastly
  • Highwinds

Standalone Legacy mode

  • Edgecast
  • Akamai
  • Highwinds

While I started as a project with separate parts for each CDN vendor, the standalone parts will not be maintained anymore.

Features:

  • Python based: Easy to set up and maintain
  • Uses Lambda environment variables: Modify the environment variables to modify the Lambda behavior
  • purge or load: On Edgecast, you can decide whether to purge from the edge or load onto the edge

Environment variables

Environment variables will be loaded only at the Lambda cold start

  • debug <true|false>
  • config_file defaults to multicdn.config.yml

General Usage

  1. Install and configure Python, pip and Boto3
  2. In the project directory, run the following command: pip install -r requirements.txt -t . This is in order to be able to create a full deployable package for Lambda
  3. Update the config files. There is a master YAML file, but credentials can also be managed in the config.py files in each vendor’s folder.
  4. Run the installation script. It will upload the function and its dependencies to AWS Lambda, as well as create the necessary roles, policies and triggers.

Additional Notes

Creating an Edgecast API key: https://support.globaldots.com/hc/en-us/articles/115004003749-Edgecast-Allowing-API-access

Adding authentication to Fastly purge: https://docs.fastly.com/guides/purging/authenticating-api-purge-requests

Good luck!

Learn More

slider item
Content Delivery Network (CDN)
Shalom Carmel, CIO @ GlobalDots 04.01.23

A Content Delivery Network (CDN) is a globally distributed network of web servers or Points of Presence (PoP) whose purpose is to provide faster content delivery. The content is replicated and stored throughout the CDN so the user can access the data that is stored at a location that is geographically closest to the user. […]

Read more
Top 10 Benefits of Using a Modern CDN Architecture
Content Delivery Network (CDN)
Shalom Carmel, CIO @ GlobalDots 08.12.22

The Global Content Delivery Network (CDN) market is expected to grow by $42.4 billion between now and 2032.

Read more
Outpace Your Competition by Delivering the Fastest eCommerce Experience Possible
Content Delivery Network (CDN)
Shalom Carmel, CIO @ GlobalDots 25.07.22

Speed is one of the biggest factors to eCommerce success. Today’s consumers demand rapid content delivery and are more willing to walk away than wait. Many brands have mistakenly relied on the seemingly magical powers of the traditional Content Delivery Network (CDN), but outpacing your competition requires a comprehensive approach that accelerates every component of […]

Read more
Unlock Your Cloud Potential
Schedule a call with our experts. Discover new technology and get recommendations to improve your performance.
Book a Demo