0

We have 3 tomcats with the same web app, using the same DB.

  • We want to use non-stickey session.

  • this means we will have to share the session (replicate) between the tomcats (cluster?)

  • We dont like the idea of the delta-manger since it is an all-to-all replication with preformance cost.

  • However we dont really like the backup-manager as well (still multiple copies)

My question is:

Is it possible to define a single tomcat that will be a "session manager" and all other tomcats will not keep sessions by themselves?

this way no broadcasting of sessions is needed...

Amith
  • 6,818
  • 6
  • 34
  • 45
Urbanleg
  • 6,252
  • 16
  • 76
  • 139

1 Answers1

0

My reading of the Tomcat docs finds:

... when using the delta manager it will replicate to all nodes, even nodes that don't have the application deployed.

exactly as you say, but then says:

To get around this problem, you'll want to use the BackupManager. This manager only replicates the session data to one backup node

You seem to object to "multiple copies", but this doesn't seem very different from your proposed suggestion, the BackupManager is, so far as I can see, acting as a Session Manager.

When you don't have sticky sessions you are pretty much guaranteeing that 2 of every 3 requests will need to get a copy of the session data from somewhere else, with only 3 tomcats how much performance cost would all-to-all replication impose?

I suspect that tuning your session sizes is more important. Large sessions tend to be a problem for any sort of replication.

djna
  • 54,992
  • 14
  • 74
  • 117