- distributed servers that hold static content for faster delivery - clients get content from CDN first, then progress to backend services - static content examples: image, video, [[Javascript]], [[CSS]] - considerations: - CDNs are run by 3rd party providers, so remove infrequently used assets, since you are charged for data transfers in and out of a CDN - set cache expiry time that isn't too long or too short - during CDN outages, clients should be able to detect this and request resources from the origin