d8b629c713
ref https://linear.app/tryghost/issue/ENG-902/add-an-optional-timeout-in-the-redis-cache-adapter-in-case-redis - Added an optional timeout parameter to AdapterCacheRedis, so that the `get(key)` method will return `null` after the timeout if it hasn't received a response from Redis - When load testing the `LinkRedirectRepository` with the Redis cache enabled on staging, we noticed that for some reason Redis stopped responding to commands for ~30 seconds. - The `LinkRedirectRepository` was waiting for the Redis cache to respond and resulted in a drastic increase in response times for link redirects - This change will allow us to set a timeout on the `get(key)` method, so that if Redis doesn't respond within the timeout, the method will return `null` as if it were a cache miss. - Then the `LinkRedirectRepository` will fall back to the database and return the link redirect from the database instead of waiting indefinitely for Redis to respond |
||
---|---|---|
.. | ||
adapter-cache-memory-ttl | ||
adapter-cache-redis | ||
adapter-manager | ||
admin | ||
announcement-bar-settings | ||
api-framework | ||
api-version-compatibility-service | ||
audience-feedback | ||
bookshelf-repository | ||
bootstrap-socket | ||
collections | ||
constants | ||
core | ||
custom-theme-settings-service | ||
data-generator | ||
domain-events | ||
donations | ||
dynamic-routing-events | ||
email-addresses | ||
email-analytics-provider-mailgun | ||
email-analytics-service | ||
email-content-generator | ||
email-events | ||
email-service | ||
email-suppression-list | ||
express-dynamic-redirects | ||
external-media-inliner | ||
extract-api-key | ||
ghost | ||
html-to-plaintext | ||
i18n | ||
importer-handler-content-files | ||
importer-revue | ||
in-memory-repository | ||
job-manager | ||
link-redirects | ||
link-replacer | ||
link-tracking | ||
magic-link | ||
mail-events | ||
mailgun-client | ||
member-attribution | ||
member-events | ||
members-api | ||
members-csv | ||
members-events-service | ||
members-importer | ||
members-ssr | ||
mentions-email-report | ||
milestones | ||
minifier | ||
model-to-domain-event-interceptor | ||
mw-api-version-mismatch | ||
mw-cache-control | ||
mw-error-handler | ||
mw-session-from-token | ||
mw-update-user-last-seen | ||
mw-version-match | ||
mw-vhost | ||
nql-filter-expansions | ||
oembed-service | ||
offers | ||
package-json | ||
payments | ||
post-events | ||
post-revisions | ||
posts-service | ||
recommendations | ||
referrers | ||
security | ||
session-service | ||
settings-path-manager | ||
slack-notifications | ||
staff-service | ||
stats-service | ||
stripe | ||
tiers | ||
update-check-service | ||
verification-trigger | ||
version-notifications-data-service | ||
webmentions | ||
tsconfig.json |