Механизм приложения автоматически кеширует частые запросы? - PullRequest
3 голосов
/ 13 марта 2012

Кажется, я помню, что где-то читал, что механизм приложений Google автоматически кэширует результаты очень частых запросов в память, чтобы они быстрее извлекались.

Это правильно?

Если да, то есть ли плата за чтение хранилища данных по этим запросам?

Ответы [ 3 ]

5 голосов
/ 13 марта 2012

Если вы используете Python и новый API ndb, он ДОЛЖЕН автоматически кэшировать сущности, поэтому, если вы выбираете сущности по ключу, он будет кэширован:

http://code.google.com/appengine/docs/python/ndb/cache.html

Как говорится в комментариях, запросы не кэшируются. Кэшированные запросы не попадают в хранилище данных, поэтому вы экономите на чтениях.

Если вы используете Java или другие API для доступа к хранилищу данных, то нет, кэширование отсутствует.

отредактировано Исправлена ​​ошибка, связанная с кэшированием запросов.

1 голос
/ 13 марта 2012

Нет, это не так.Однако в зависимости от того, какую среду вы используете для доступа к хранилищу данных, будет использоваться memcache.Вы разрабатываете в Java или Python?Со стороны java, Objectify будет кэшировать GET автоматически, но не запросы.Имейте в виду, что существует большая разница с точки зрения производительности и кэшируемости между запросами и запросами как в Python, так и в Java.

Вы не платите за чтение хранилища данных при обращениях к memcache.

1 голос
/ 13 марта 2012

Я думаю, что движок приложения ничего не кеширует для вас.Хотя может случиться так, что внутренне он кеширует некоторые вещи на долю секунды, но я не думаю, что вы должны на это полагаться.читать из каждого запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...