Делать запросы на обновление данных в Google App Engine
Я строю простое приложение на Google App Engine
, который использует твиттер ReST Api. Я могу успешно получить данные из GET
просьба в твиттер ReST Api. Я все еще новичок в Python, поэтому прошу прощения за любое невежество. Итак, мой вопрос: как наиболее эффективно сделать мой запрос GET в Twitter, чтобы я мог получать обновленную информацию? Кто-то предложил использовать timer()
и делать HTTP-запрос каждые 5 секунд, но это не кажется эффективным, не так ли? Идея в том, что я хочу, чтобы мой набор результатов обновлялся, и единственный способ сделать это - продолжать звонить в API. Я провел некоторые исследования в Интернете и нашел google.appengine.api.urlfetch
Однако, поскольку я новичок в этом, я не знаю, будет ли это правильно. любой совет?
1 ответ
Вы путаете несколько вещей. API urlfetch - это просто способ отправки запросов от GAE, не связанный с самим опросом.
Если вы можете допускать частоту опроса с разрешением в 1 минуту, вы можете использовать службу cron для проведения опроса.
Вы можете получить разрешение менее 1 минуты с помощью службы отложенной очереди, которая более эффективна, чем использование таймеров.
Обновить:
Очереди задач предпочтительнее отложенной библиотеки, отложенные функциональные возможности доступны при использовании countdown
или же eta
Аргументы для taskqueue.add ():
обратный отсчет - время в секундах в будущем, когда эта задача должна быть запущена или сдана в аренду. По умолчанию ноль. Не указывайте этот аргумент, если вы указали eta.
Эта - А
datetime.datetime
это указывает абсолютное самое раннее время, в которое задача должна быть запущена. Вы не можете указать этот аргумент, если указан аргумент обратного отсчета. Этот аргумент может быть привязан к часовому поясу или наивен по часовому поясу, либо задан как время в прошлом. Если аргумент установлен на None, значение по умолчанию теперь. Для задач по запросу ни один работник не может арендовать задачу раньше времени, указанного в аргументе eta.