Случайные вызовы memcache занимают слишком много времени - PullRequest
2 голосов
/ 26 сентября 2011

Пожалуйста, посмотрите этот журнал приложений, случайно некоторые вызовы memcache занимают необычайно больше времени, чем другие. Все они получают вызовы для счетчиков memcached, поэтому в вызовах, которые занимают больше времени, нет ничего особенного. Любое объяснение?

enter image description here

1 Ответ

1 голос
/ 16 октября 2011

Memcache, как и все службы GAE, выполняется с помощью удаленного вызова процедуры, и время ответа не генерируется. Если машина / сеть занята, это может привести к задержке.

Реальный вопрос здесь в том, как вы вызываете memcache 20 раз за один запрос?
Есть два способа обойти это:

  1. Используйте get_multi , чтобы получить все значения одновременно (если это возможно)
  2. Используйте асинхронный memcache , начните извлекать значения, но не ждите, пока они будут использованы, когда они все будут готовы.
...