Added ReadAfterWrite

This commit is contained in:
Derek Wang
2025-03-02 19:41:39 -08:00
parent 35ea5a234f
commit 72b72a949f
3 changed files with 28 additions and 0 deletions

20
app/cache/read_after_write_cache.py vendored Normal file
View File

@@ -0,0 +1,20 @@
from .cache import BaselineCache
from database import get_user_profile
class ReadAfterWriteCache(BaselineCache):
def __init__(self, limit):
super().__init__( limit )
def invalidate(self, key: str) -> bool:
# basic delete invalidation, but after writing, we immediately read the value and add it to the cache
invalidated = False
if key in self.cache:
del self.cache[key]
invalidated = True
newData = get_user_profile( key )
self.put( key, newData )
return invalidated