Я начинаю использовать memcache чаще, чтобы избежать необходимости пересчитывать вещи между запросами страниц. Когда memcache периодически очищается, как и было задумано, мне приходится начинать все заново, восстанавливая различные элементы, которые я поместил в memcache. Я хотел бы создать очень простую модель, которая позволит мне периодически сохранять элементы, которые я помещаю в memcache, на основе ключей memcache, которые я использую, вместе с датой и временем, связанным с данными, которые кэшируются в memcache. Каков наилучший способ сделать это?
Я ищу что-то вроде этого:
class MemcacheRecord(db.Model):
key = db.StringProperty(required=True)
value = #Something that can store whatever memcache can
validThru = db.DateTimeProperty(required=True)
def set(self, key, value, validThru):
#Save a new memcache record
newMemcacheRecord = MemcacheRecord(key=key, value=value, validThru=validThru)
..
return True # or False
def get_latest(self, key):
#Get the memcache record with the most recent validThru datetime
latestMemcacheRecord = MemcacheRecord.all().order('-validThru').get()
return {'validThru':latestMemcacheRecord.validThru, 'value':latestMemcachRecord.value}