Skip to content

microsoft/cachepurge

Repository files navigation

CachePurge: Cache Invalidation and Purge for multiple CDNs

CachePurge is a centralized service that allows the user to invalidate and purge cache from multiple CDNs easily.

Introduction

CacheOut is implemented in C# using the .NET core framework and uses a combination of Azure Functions, CosmosDB and Azure Queues to create a workflow that begins upon receiving a purge request from the user.

The design is as follows: Cache Purge Initial Design

Getting Started

Local Setup

Making changes

The project structure is divided into the following:

  1. CachePurgeLibrary:

    • non-CDN specific code that is utilized throughout the solution
    • no changes needed if you're not making significant structural changes to the project
  2. CdnLibrary:

    • CDN library code used in CdnPlugins and MultiCdnApi
    • will need to edit this project heavily to add your own custom CDN specific processing logic
  3. CdnPlugins:

    • contains CdnPlugin functions and EventCompletion function
    • change as needed based on CDNs used
  4. MultiCdnApi:

    • contains user facing API
    • change as needed based on CDNs and user input

To make changes to the CDNs for e.g. to add or remove a CDN, you will need to add your custom CDN logic to CdnLibrary. Propagate the changes down to CdnPlugins and MultiCdnApi.

About

CachePurge is a centralized service that allows the user to invalidate and purge cache from multiple CDNs easily.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages