Twitter Превышен предел скорости в Google App Engine - PullRequest
3 голосов
/ 19 июля 2010

Я использую Google App Engine и хочу загрузить твиты от данного пользователя.

Я просто звоню http://api.twitter.com/1/statuses/user_timeline/USERNAME.json

Но почти всегда (примерно в 99% случаев)get "Превышен лимит скорости. Клиенты могут отправлять не более 150 запросов в час", связана ли эта проблема с инфраструктурой Google App Engine Cloud?Что мне делать?(например, хранение данных на другом сервере, а затем вызов оттуда ...)

1 Ответ

8 голосов
/ 20 июля 2010

имеет ли эта проблема какое-то отношение с Google App Engine Cloud inrastructure

Да.

Метод API, который вы вызываете, с ограниченной скоростью :

Ограничение по умолчанию для звонков на API REST - 150 запросов в час. REST API делает учетную запись и Ограничение скорости на основе IP. Заверенные Вызовы API оплачиваются аутентификация пользователя в то время как неаутентифицированные вызовы API вычитаются с вызывающего IP-адреса распределение.

Это прекрасно работает, если ваше приложение имеет выделенный IP; в App Engine многие приложения могут использовать один и тот же исходный IP-адрес для своего запроса urlfetch, поэтому неаутентифицированные запросы к API Twitter будут получать из одной и той же квоты.

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

Ник Джонсон опубликовал учебное пособие о том, как отправлять аутентифицированные вызовы API в Twitter из App Engine.

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