Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

new llHTTPRequest throttling?

Lex Neva
wears dorky glasses
Join date: 27 Nov 2004
Posts: 1,361
09-03-2006 15:18
A question for a dev...

The release notes for 1.12.1 say:

From: release notes

* llHTTPRequest throttling changed
** Requests are now limited to once per second per object, per owner, per sim


This is kind of ambiguous, and I can't really tell what it means for me. "Once per second per object" might make sense, meaning that each object could submit one request per second. "Once per second per owner" would also make sense, meaning that each person's objects, collectively, could only submit one request per second. "Once per second per object, per owner, per sim" really doesn't resolve to anything definite in my mind.

If it does turn out that this means that each person's objects, collectively, only get one llHTTPRequest per second, what happens if more are attempted? Do they return NULL_KEY, or do the scripts sleep while waiting in line?

If it's the former, this is a big problem. I've got object arrayed around my sim that do various little things periodically to get information from my webserver, often as a result of avatar interaction. If two avatars happened to trigger two different objects to send off HTTP requests within the same second, and one got throttled... that'd be a real pain. That means every single call to llHTTPRequest would need to have a loop around it to keep sleeping a second and trying again until a successful request was sent, and probably a counter to make an absolute maximum number of attempts, just in case... this starts to become very tedious.

In short, what I'm saying is that, while any one of my objects will, at worst, send a request every few minutes, they could conceivably burst to two or three requests within a second due to a coincidence. It would be a real pain if that resulted in throttling.
Kelly Linden
Linden Developer
Join date: 29 Mar 2004
Posts: 896
09-05-2006 09:06
The throttle rate is actually 20 every 20. It is per object owner, per sim. You shouldn't have any problem with a few piling up.
_____________________
- Kelly Linden
Kelly Linden
Linden Developer
Join date: 29 Mar 2004
Posts: 896
09-05-2006 10:33
Oh! I just found out I was wrong.

The throttle in 1.12.1 is:

20 requests per 20 seconds, very similar in rules to the old throttle of 20 in 100. However, the new throttle is based in object id, not agent id. This means that your first theory of 1000 objects each with their own throttle is the correct one.

In other words the throttle is 1 request per second per prim.
_____________________
- Kelly Linden