Hey Andrew

> What I mean by this is that when a session ID is changed the memory still
> holds the session variables until expiry, I know I could perhaps go and do a
> kill on these unused session vars.

How do you know that a session variable is unused unless it has
expired without reading a user's mind? By definition session variables
should be considered in use until they expire, at at that point CF
marks them as ready for garbage collection so I wouldn't spend time
worrying about this too much.

The best way to keep memory to a minimum would be to persist the more
complex/large data structures and just store a key in memory so you
can easly fetch them out when you need them. However you would then
need your own garbage collection system to clean out these records
from the DB.

In general I don't like the idea of stuffing lots of stuff into the
session scope. I get especially fustrated when I see multi-step form
processes relying on session scope to store the data from the
preceeding steps.

On another note (and I'm not trying to flame, or start another
upgrade/don't upgrade war) its worth noting that CF7 introduces the
idea of onSessionEnd(), which would allow you to clean any values that
have been persisted temporarily as soon as the session expires.


Cheers

Mark

-- 
Mark Stanton 
Gruden Pty Ltd 
http://www.gruden.com

---
You are currently subscribed to cfaussie as: [email protected]
To unsubscribe send a blank email to [EMAIL PROTECTED]
Aussie Macromedia Developers: http://lists.daemon.com.au/

Reply via email to