GitHub auth: use up to 3/4 of the user's rate limit

This commit is contained in:
Thaddee Tyl 2016-06-27 19:38:01 +02:00
parent 56746d4a38
commit bfc6e7d863

View File

@ -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;