diff --git a/lib/middleware/cache/redis.js b/lib/middleware/cache/redis.js index eb534abcab..1e9889d0f6 100644 --- a/lib/middleware/cache/redis.js +++ b/lib/middleware/cache/redis.js @@ -32,8 +32,10 @@ module.exports = { let [value, cacheTtl] = await redisClient.mget(key, cacheTtlKey); if (value && refresh) { if (!cacheTtl) { + // if cacheTtl is not set, that means the cache expire time is contentExpire cacheTtl = config.cache.contentExpire; - redisClient.set(cacheTtlKey, cacheTtl, 'EX', cacheTtl); + // dont save cacheTtl to Redis, as it is the default value + // redisClient.set(cacheTtlKey, cacheTtl, 'EX', cacheTtl); } else { redisClient.expire(cacheTtlKey, cacheTtl); } @@ -54,7 +56,10 @@ module.exports = { value = JSON.stringify(value); } if (key) { - redisClient.set(getCacheTtlKey(key), maxAge, 'EX', maxAge); + if (maxAge !== config.cache.contentExpire) { + // Only set cacheTtlKey if maxAge !== contentExpire + redisClient.set(getCacheTtlKey(key), maxAge, 'EX', maxAge); + } return redisClient.set(key, value, 'EX', maxAge); // setMode: https://redis.io/commands/set } },