On Wed, 05 Nov 2008 12:17:03 +0100
Emmanuel Lecharny <[EMAIL PROTECTED]> wrote:

> Julien Vermillard wrote:
> > session idleing is usefull and well triggered using select(1000)
> > timeout in AbstractPollingIoProcessor internals.
> >   
> Except that discovering such magic number (1000) in the code is
> pretty embarrassing ... For a heartbeat system, this is certainly not
> what we could expect the code to be :)
> 
> But, basically, yes, if we can add a configurable parameter to be
> used in the select(), that would do the trick.
> 
> Now, should we modify the NioProcessor thread to handle such a case, 
> when it can be done in a filter? I think that it should be a
> combinaison : a select() with a configurable value (ie, not
> necessarily something which has to be set from the outside, but a
> value which can be set by a filter), and a filter to handle such an
> heartbeat, with a specific message sent to the chain (HeartBeatEvent).
> 
> Just pushing ideas here ...
> 
Actually the idle event for session is quite simple and work well, you
got it with a granularity of 1 sec without extract polling thread. What
is more questionable is the ioService idle event who use an external
polling thread (IdleStatusCheker).

Throughput calculation is an issue too because it's done in some kind
of very intrusive way.

Changing the select timeout is an idea, perhaps we can find a way to
automagically set it to the minimun of idle time of all the sessions
managed by the IoP. If the mnimum idle time is 10 seconds, why check
every seconds ? but it's some kind of tuning and out-of-radar for
today :)

Julien

Attachment: signature.asc
Description: PGP signature

Reply via email to