Стратегия Twitter: потоковый API против REST API

#twitter #streaming

#Twitter #потоковая передача

Вопрос:

Я работаю над своего рода стеной Twitter. Пользователи могут войти в систему с помощью Twitter и создать свою собственную стену, на которой будут отображаться твиты с определенными терминами / хэштегами.

Я все еще ищу лучшую стратегию для извлечения данных из API Twitter. Следуя некоторым моим мыслям:

Стратегия 1: потоковый API

  • Открыть один поток (ОПУБЛИКОВАТЬ статусы / фильтр) для всех стен
  • Каждый хэштег добавляется к параметру дорожки
  • Когда поступают новые твиты, они обрабатываются и отправляются на соответствующую стену
  • («одна учетная запись, одно приложение, одно открытое соединение» ср. https://dev.twitter.com/discussions/14935 )

Проблемы с потоковым API

  • Streaming api ограничен 400 ключевыми словами для отслеживания
  • Что делать, если требуется отслеживать более 400 ключевых слов?
  • Потоковый api ограничен 1% твитов firehose
  • Очень сложно получить более 1% от пожарного шланга, но если вы отслеживаете такой термин, как «apple», было бы довольно легко превысить 1%. (ср. https://dev.twitter.com/discussions/6349 )
  • Как я могу справиться с такими популярными терминами? Занесите их в черный список?

Стратегия 2: REST Search API

  • Хранить токены доступа пользователей
  • Опросите поисковый API (GET search / tweets) от имени пользователя, соблюдая ограничения скорости 180 запросов в 15 минут
  • (ср. https://dev.twitter.com/discussions/11141 )

Проблемы с API поиска REST

  • Опрос
  • Опрос API для большого количества пользователей может оказаться очень дорогостоящим.

Есть ли у вас какие-либо предложения / рекомендации, какая стратегия подойдет лучше всего? Существуют ли уже решения для этих проблем?

С наилучшими пожеланиями