perf: replace Redis KEYS with SCAN for cache invalidation (#98) #101
@ -188,9 +188,11 @@ class CacheManager:
|
||||
|
||||
try:
|
||||
pattern = f"{prefix}:*"
|
||||
keys = await client.keys(pattern)
|
||||
if keys:
|
||||
deleted = await client.delete(*keys)
|
||||
keys_to_delete = []
|
||||
async for key in client.scan_iter(match=pattern):
|
||||
keys_to_delete.append(key)
|
||||
if keys_to_delete:
|
||||
deleted = await client.delete(*keys_to_delete)
|
||||
logger.info(f"Cleared {deleted} cache keys with prefix '{prefix}'")
|
||||
return deleted
|
||||
except Exception as e:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user