Как memcache.incr() влияет на периоды обслуживания App Engine?
Я работаю над приложением, которое будет работать на Google App Engine. Я хотел бы, чтобы он изящно реагировал на периоды обслуживания App Engine.
Согласно документации, memcache просто не будет хранить или извлекать данные в течение периодов обслуживания:
В течение периода обслуживания, доступного только для чтения, вызовы API-интерфейса memcache не будут генерировать исключения, а вместо этого будут возвращать False для вызовов set() и None для вызовов get() (как и в случае любой другой ошибки кэша). Кроме того, вызовы memcache API будут возвращаться немедленно в течение этого периода без каких-либо дополнительных задержек.
Это относится к incr()
звонит также? Кажется, что так и должно быть, но я не могу найти никакой документации на этот счет, и я хочу быть уверен.
1 ответ
Документация для incr()
состояния:
Возвращаемое значение - это новое длинное целое значение или None, если ключ не был в кэше или не может быть увеличен по какой-либо другой причине.
Как видно из документации, вы не можете устанавливать или получать данные во время обслуживания, и incr()
на самом деле просто вспомогательная функция вокруг set()
, вы должны ожидать возвращаемое значение None в течение периодов обслуживания для incr()
функция.