【问题标题】:Twitter Search API Rate Limit ZendTwitter 搜索 API 速率限制 Zend
【发布时间】:2012-03-08 18:17:19
【问题描述】:

我们正在尝试创建一个应用程序,该应用程序允许用户显示 20 支足球队的最新推特新闻。我们将 Zend_Service_Twitter_Search 与足球队查询一起使用,例如“兵工厂”。

我们遇到的问题是,在任何时候网站都可能会请求查看所有 20 个团队的新闻,因此如果有很多用户这样做,那么对 API 的 20 次调用就会达到每小时限制。

我们想要所有 20 个团队的最新消息,因此我们不希望将数据缓存超过 1 分钟。有没有人对此有一些建议我已经通过文档但没有建议。

干杯

J

【问题讨论】:

    标签: php zend-framework twitter twitter-search


    【解决方案1】:

    在我看来,这更像是一个后端设计问题。您要处理的问题是:

    1. 为任何规模的用户提供当前数据
    2. 不超过未发布的 api 限制Twitter API limits

    似乎解决方案是某种数据库/数据存储来持久化数据。
    您可以让您的 20 次 API 调用每分钟存储信息,然后根据需要将其提供给用户。

    在简要查看 Twitter API 文档后,似乎对存储数据没有任何限制。虽然您可能需要重新考虑使用搜索 API 的频率,因为未发布的限制。

    【讨论】:

      【解决方案2】:

      我最近实现了类似的东西。简单的答案是计算出您需要进行多少次查询。假设每个团队有 1 个,所以每次 20 个。将 60 秒(速率限制的时间段)除以(速率限制/查询次数),然后将结果简单地缓存在 memcache 之类的秒数中。然后,当用户访问该站点时,如果结果存在,则从 memcache 中提取结果,否则将其更新。 Memcache 非常棒,因为它会自动清除过期的数据,这样您就不会超过速率限制,并且将始终拥有尽可能最新的数据(不会超出您的速率限制)。

      因此,如果速率限制为每分钟 200 次(我知道不是,但它使计算变得容易),您将缓存结果 60 / (200/20) = 6 秒。因此,在最大速率下,您将在一分钟内对 20 个团队中的每个团队进行 10 次查询,因此每分钟 200 次查询,这是对速率限制的冲击。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-08-22
        相关资源
        最近更新 更多