-
Task
-
Resolution: Done
-
Major
-
None
-
None
Stop storing clustered session metadata as a single key value pair in JBossCache. Instead, separate those attributes prone to frequent change (s/b just the access timestamp) from those that are largely fixed at session creation. Call cache.put() with the "fixed" ones only on the first request (or in the less likely event that something changes in them, e.g. timeout interval, in a later request.) Store the timestamp with every request; perhaps less often if the request didn't change anything else in the session, i.e. no more often than every 30 secs.
With this we can get rid of hacky stuff like using Subject/Observer to track FIELD granularity pojo attribute changes. We just do that so we know whether to replicate session the metadata.