The documentation indicates that the default interval for computing the average request per second is 30 seconds. My question is: When does this 30 second start and end? Is it based on the server clock? That is, it computes the average rps @ 01:01:00 then @ 01:01:30 then @ 01:02:00 etc? Or is it based on the server's up-time? Or perhaps based on another algorithm all together?
I simply need to know the frame of reference for computing the average rps. The documentation and the blog posts by Jyri Virkki are not clear about this.
IIRC, the interval is computed on demand when needed for a given rule. The interval is a minimum interval, if no matching requests arrive then the rps won't be computed again until needed.
FYI Sun open-sourced most of the Web Server code, so you can check the implementation directly if you wish.
Looks like the relevant part is starting on line 308 of http://heliod.svn.sourceforge.net/viewvc/heliod/trunk/src/server/safs/reqlimit.cpp?revision=2&view=markup