Skip to content

Conversation

@syphar
Copy link
Member

@syphar syphar commented Nov 21, 2025

I think this is ready for a first review.

For now I tried to keep both CloudFront & Fastly alive to be able to test fastly more deeply in production. But I also didn't invest too much time into fleshing out a design / refactor that incorporates both, since we'll drop CloudFront when all is fine.

The idea is to deploy this, then configure the fastly service SIDs, the API token and then see how it errors, and if invalidation works on https://fastly.docs.rs/.

I tried to add many explanations & documentation links where needed, but I'm happy to add more.

Main conceptual differences:

  1. fastly can invalidate much faster (~150ms), so we don't need the queueing & worker any more
  2. but, while CloudFront could invalidate "path prefixes" like /{krate}/* and /crate/{krate}/*, we have to explicitly tag the content for fastly to be able to purge it later. My guess is that this is why it's so fast :)

@syphar syphar self-assigned this Nov 21, 2025
@syphar syphar requested a review from a team as a code owner November 21, 2025 10:58
@github-actions github-actions bot added the S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed label Nov 21, 2025
@GuillaumeGomez
Copy link
Member

Looks good to me, thanks!

@syphar syphar merged commit 52bb2be into rust-lang:master Nov 21, 2025
14 checks passed
@syphar syphar deleted the fastly2 branch November 21, 2025 15:32
@github-actions github-actions bot added S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it and removed S-waiting-on-review Status: This pull request has been implemented and needs to be reviewed labels Nov 21, 2025
@syphar syphar removed the S-waiting-on-deploy This PR is ready to be merged, but is waiting for an admin to have time to deploy it label Nov 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants