Эй. Я работаю над приложением App Engine, которое включает запросы к API Карт Google для геокодирования. Google Maps не любит слишком много запросов, поэтому я устанавливаю 1-секундную задержку между каждым запросом с помощью time.sleep(1)
.
Я заметил, что мои квоты работают на моей панели инструментов GAE и решили провести короткий тест:
import cProfile
import time
def foo():
time.sleep(3)
cProfile.run('foo()')
Который дал мне следующий результат:
4 function calls in 3.003 CPU seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 3.003 3.003 <stdin>:1(foo)
1 0.000 0.000 3.003 3.003 <string>:1(<module>)
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
1 3.003 3.003 3.003 3.003 {time.sleep}
Итак, он говорит, что он потребляет 3 секунды процессора для time.sleep(3)
. Теперь мне интересно, учитываются ли подобные вызовы в отношении ограничений квот, предоставляемых GAE. И если это так, каков другой способ сделать задержки между вызовами API для геокодирования?
Спасибо.