Hi,

I see that currently Orchestra has a feature that allows conversation
contexts to be timed out (deleted) automatically. 

I'm a little curious about why this feature is needed. When a user's
session times out the conversation data is discarded anyway. When is it
useful to have a conversation timeout shorter than the http session
timeout?

Also, the implementation spawns a thread to periodically monitor
conversations for timeout. The j2ee spec is pretty threatening about
code spawning threads. In practice I've not had problems with this but
nevertheless it makes me a little nervous.

Would it be possible to instead check for conversation timeouts from a
PhaseListener? Yes this means that if the webapp is totally unused then
the timeouts will not get checked. However I don't think that's really
an issue in practice. It does also mean that once in a while a user's
page will be delayed a little while all the timeouts are checked as part
of that request (rather than as a background thread) but the amount of
work to be done is really rather small...

Regards,

Simon

Reply via email to