问题标签 [rate-limiting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
771 浏览

python - Twitter 随机速率限制

我正在尝试使用 python-twitter API 检索用户朋友网络。我正在使用 getFriendIDs() 方法检索特定 Twitter 用户关注的所有帐户的 ID。以下是我的测试代码的一小部分:

IdList 中有 35 个 id(Twitter 用户帐户),对于每个项目,我最多检索 4999 个 ID,ID 为“item”的当前用户正在关注。我知道 twitter 的新速率限制,其中速率限制窗口已从 60 分钟更改为 15 分钟,并且他们建议您不要每分钟向服务器发出超过一个请求 (api.MaximumHitFrequency( ))。所以基本上 15 分钟内有 15 个请求。这正是我正在做的事实上我每 66 秒而不是 60 秒向服务器发出一个请求,但是在 6 个请求后我得到一个速率限制错误。我无法弄清楚为什么会这样。请让我知道是否有其他人遇到过这个问题。

0 投票
2 回答
7333 浏览

python - Twitter API - 获取关注者的关注者数量

我正在尝试获取特定帐户的每个关注者的关注者数量(目标是找到最具影响力的关注者)。我在 Python 中使用 Tweepy,但我遇到了 API 速率限制,在我被切断之前我只能获得 5 个关注者的关注者数量。我正在查看的帐户有大约 2000 个关注者。有没有办法解决这个问题?

我的代码片段是

谢谢

0 投票
1 回答
3600 浏览

node.js - 3rd 方 API 调用的 node.js 应用程序级速率限制

我正在构建的应用程序对 Facebook Graph API 进行了大量调用(但它可以是任何具有速率限制的 API)。为了论证的缘故,假设限制是每 10 分钟 600 个请求。

我正在使用https://github.com/jhurliman/node-rate-limiter来限制单个线程,但我需要做的是在宏应用程序级别限制所有 Facebook API 调用,以便应用程序作为整体不超过该限制。

我真的不知道如何做到这一点。我对节点相当陌生,甚至不知道解决方案会是什么样子。

最好知道 Facebook 的速率限制是针对每个应用程序还是每个经过身份验证的用户。我假设应用程序,因此这个问题。

0 投票
1 回答
5844 浏览

facebook - Facebook API - 每个用户令牌的少量请求达到用户速率限制

我有一个适用于 Android 的应用程序,它每 N 分钟检查一次来自 Facebook 的新通知,其中 N 超过 5 分钟(默认为 30 分钟)。该应用程序还向 Facebook 的 Graph API 发出一些用户生成的请求。最近(从我们为新通知添加计划轮询的那一刻起),Facebook 开始限制我们的应用程序(主要是错误 #17 “达到用户请求限制”,但有时它会给出错误 #4 “达到应用程序请求限制”)。Insights Dashboard 为我们提供以下统计数据:每天 255,000 个请求,432 个用户。这使得每个用户每天大约有 590 个请求,这与我能够找到的任何提到的 API 限制相去甚远。Facebook 关于速率限制的信息非常模糊,以下是一些您通常可以在不同来源中找到的数字:

  1. 每个 IP 每个令牌每 600 秒 600 次调用。
  2. 每个应用每天 1 亿次调用。
  3. 每个用户令牌每天 10,000 次调用。

我们的应用程序定期执行的计划请求是一个简单的 FQL:

从通知中选择 sender_id、created_time、title_text WHERE recipient_id=me() AND is_hidden = 0 AND is_unread = 1

即使最小更新间隔为 5 分钟,它每天也会被触发 288 次。我们试图用 Graph API 调用替换这个请求,但它并没有改变任何事情。

我知道还有其他具有类似功能的应用程序,它们似乎没有这些限制。

有谁知道是否有任何方法可以避免被 Facebook 限制在如此低的通话量中?

谢谢!

0 投票
1 回答
377 浏览

security - 如何使用带有缓存前缀的 Rack::Attack?

我们针对同一个 Memcached 运行多个应用程序,因此我想使用 Rack::Attack 为所有应用程序配置不同的前缀。默认情况下,多个应用程序会覆盖彼此的缓存。

我已经看到了前缀访问器,Rack::Attack::Cache甚至还有一个低级规范,但没有关于如何使用它的示例。

根据README介绍性博文,我从不需要处理Rack::Attack::Cache但总是与更高级别的Rack::Attack.

那么,两个或多个应用程序如何在不覆盖彼此缓存键的情况下为 Rack::Attack 使用相同的 memcached 呢?

0 投票
0 回答
190 浏览

ios - 使用 iOS 社交框架的应用程序是否会受到 Twitter 速率限制的影响?

我正在制作一个利用 Apple 的社交框架访问 Twitter 的应用程序。我计划最终在应用商店上发布它。我知道 twitter 有速率限制,例如每个用户每个端点 15 个请求/15 分钟。我也知道 twitter 对应用程序有 100,000 个用户限制,但是我不知道这如何与 Apple Social Framework 一起使用。我没有在 Twitter 网站上明确创建应用程序,也没有客户端 ID。由于使用 Social Framework 时没有应用程序 ID,这些限制是否仍然适用?

0 投票
1 回答
1940 浏览

ruby-on-rails - Queuing API calls to fit rate limit

Using Full Contact API, but they have a rate limit of 300calls/minute. I currently have it to set that it does an API call when uploading the CSV file of emails. I want to queue it such that once it hits the rate limit or does 300 calls, it waits for 1 minute and proceeds. Then I will put delayed_job on it. How can I do that? A quick fix is to use

but how do I find it such that it made 300 calls already, make it sleep or queue it for next set?

0 投票
1 回答
1111 浏览

ruby-on-rails - 自定义设置 Pusher 速率限制

我在我的一个 ActiveRecord 模型中使用 Rails after_save 回调向客户端发送推送通知,然后触发部分刷新。我正在使用推杆。我遇到的问题是我可能会在 5-10 秒内创建或更新多达 50 条记录或其他任何时间,这会发送大量推送通知并最终刷新。我知道推送器的速率限制为每个客户端(连接)每秒不超过 10 条消息。有没有办法调整该速率限制,使每个客户端(连接)每分钟不超过 1 条消息?

0 投票
2 回答
1764 浏览

google-admin-sdk - 超过 Google Admin SDK 403 速率限制

我们正在使用 Google 的Admin SDK API。当我们执行超过 2 个线程向 Google 的服务器发出批量请求时,我们会收到很多 403(超出速率限制)错误。

我们在项目管理面板中更改了每秒请求的速率限制,但似乎没有效果。正如谷歌在https://developers.google.com/admin-sdk/directory/v1/limits中建议的那样,我们已经尝试使用每个线程一个用户的凭据。

我们每秒可以实际发送多少个请求?

除了联系谷歌来提高这个速率限制之外,还有什么办法吗?

提前致谢。

0 投票
2 回答
1884 浏览

c# - 如何在使用 RateGate 时更改速率限制?

我正在使用简洁的RateGate 类来限制我发送到服务器的请求数。

我的代码看起来像这样:

在内部if(MyClass.RateLimitHit),我需要将速率限制降低 1。不仅仅是变量RateLimit,还有实际运行的限制RateGate

在 RateGate 类中,我看到了这个:

我的问题是:如果我更改private set;set;并添加RateGate.Occurrences = RateLimit;之后RateLimit--;,这会做我想要的吗?

我试过了,但它看起来RateGate继续以 35/s 的最大速率执行。