GitHub auth: use up to 3/4 of the user's rate limit
This commit is contained in:
@@ -144,6 +144,8 @@ function utcEpochSeconds() {
|
||||
return ((Date.now() / 1000) >>> 0);
|
||||
}
|
||||
|
||||
var userTokenRateLimit = 12500;
|
||||
|
||||
// Retrieve a user token if there is one for which we believe there are requests
|
||||
// remaining. Return undefined if we could not find one.
|
||||
function getReqRemainingToken() {
|
||||
@@ -153,7 +155,8 @@ function getReqRemainingToken() {
|
||||
for (var token of reqReset.keys()) {
|
||||
var reqs = reqRemaining.get(token);
|
||||
var reset = reqReset.get(token);
|
||||
var hasRemainingReqs = reqs > 10; // Don't go too close to 0.
|
||||
// We don't want to empty more than 3/4 of a user's rate limit.
|
||||
var hasRemainingReqs = reqs > (userTokenRateLimit / 4);
|
||||
var isBeyondRateLimitReset = reset < now;
|
||||
if (hasRemainingReqs || isBeyondRateLimitReset) {
|
||||
return token;
|
||||
|
||||
Reference in New Issue
Block a user