perf(api): use cron triggers to update kv metadata #935
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #873.
This PR hugely simplifies the KV schema for all metadata to fix a bunch of messy caching issues and propagate updates more accurately as the previous schema stored each font with its own key, while now all fonts are stored in a single key with different categories having their own key instead of individual store.
Since endpoints are cached, performance falloff is negligible and in some cases may improve due to better caching rules in place. We should expect less KV reads in total as there will be a higher cache hit ratio.
The motivation for the KV schema change is to allow us to update our metadata with cron triggers, leading to more predictable and reliable updates.