jdtoronto has asked for the wisdom of the Perl Monks concerning the following question:
I am sitting here on my laptop miles away from my code. I have an issue to deal with and maybe someone here can throw somne light on some code or at least an alogrithm.
My client application checks a SOAP server periodically for data to be downloaded, at present each client checks every two minutes or so, and with 1600 of them in the field the server sometimes gets a pretty big hit. Especially so because many of the clients rarely, if ever, have data to collect. In the TCP/IP suite, or maybe in some link layer protocols, an exponential or random backoff or retry mechanism is used to improve channel availability and fairness.
I htink I need to introduce a mechanism like this so that clients not getting data will rapidly back off and only query the server infrequently. As soon as a client sees data they should then start using a much lower numbered slot and request data more often.
I haven't found anything by way of code so far, does anyone know of an example, a module, or even a good reference where I could find an algorithm?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Help with exponential backoff
by jasonk (Parson) on Oct 11, 2006 at 15:39 UTC | |
by jdtoronto (Prior) on Oct 11, 2006 at 15:47 UTC | |
|
Re: Help with exponential backoff
by Fletch (Bishop) on Oct 11, 2006 at 15:52 UTC | |
by jdtoronto (Prior) on Oct 11, 2006 at 16:15 UTC | |
|
Re: Help with exponential backoff
by Madams (Pilgrim) on Oct 13, 2006 at 18:04 UTC |