Jerry Krinock
2009-09-26 01:27:37 UTC
I have designed my application to prevent a user from requesting posts/
all to often and being banned or throttled. Of course, this does not
happen very often to a real user, because my application caches the
data and checks with posts/update, doing posts/all only when needed.
But it can happen if the user does certain things, and of course I can
inadvertently send lots of posts/all during development :(
A couple years ago, I noted that if I sent posts/all more frequently
than once a minute, I would get a 503 response code and, apparently,
my IP address would be banned for a couple hours. This has now changed.
Even sending posts/all less frequently than once every 3 minutes, I
can still get banned, although now it appears to be for only five
minutes or so. Another thing different is that instead of getting a
503 response code, I get a 999 response code and a web page saying
"We're sorry, we couldn't complete your request right now."
So, if someone could please tell me what the latest policy is I'd be
happy to design for it, with plenty of margin.
Also, is it true that the "You've been sending too many posts/all"
response is now 999 instead of 503? The documentation still looks the
same as it did two years ago, implying that throttling is indicated by
a 503...
http://delicious.com/help/api
Thanks,
Jerry Krinock
P.S. For future reference, I believe that a 4xx Client Error would be
more appropriate than 999.
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
According to the last paragraph in sec 6.1.1,
http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html#sec6.1
the Status Codes are supposed to be "extensible". I guess that means
you could make up your own, maybe 450 or something. 999 looks like
not a lot of thought went into it ;)
all to often and being banned or throttled. Of course, this does not
happen very often to a real user, because my application caches the
data and checks with posts/update, doing posts/all only when needed.
But it can happen if the user does certain things, and of course I can
inadvertently send lots of posts/all during development :(
A couple years ago, I noted that if I sent posts/all more frequently
than once a minute, I would get a 503 response code and, apparently,
my IP address would be banned for a couple hours. This has now changed.
Even sending posts/all less frequently than once every 3 minutes, I
can still get banned, although now it appears to be for only five
minutes or so. Another thing different is that instead of getting a
503 response code, I get a 999 response code and a web page saying
"We're sorry, we couldn't complete your request right now."
So, if someone could please tell me what the latest policy is I'd be
happy to design for it, with plenty of margin.
Also, is it true that the "You've been sending too many posts/all"
response is now 999 instead of 503? The documentation still looks the
same as it did two years ago, implying that throttling is indicated by
a 503...
http://delicious.com/help/api
Thanks,
Jerry Krinock
P.S. For future reference, I believe that a 4xx Client Error would be
more appropriate than 999.
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
According to the last paragraph in sec 6.1.1,
http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html#sec6.1
the Status Codes are supposed to be "extensible". I guess that means
you could make up your own, maybe 450 or something. 999 looks like
not a lot of thought went into it ;)