[prev in list] [next in list] [prev in thread] [next in thread]
List: tomcat-user
Subject: Re: [EXT]Re: Tomcat 10 session replication fails
From: "Jonathan S. Fisher" <exabrial () gmail ! com>
Date: 2024-04-13 22:27:33
Message-ID: CAJAC5ui7oO87oPhpov6akSPr=rpSuv6jQvSkdGVpTN481TrXew () mail ! gmail ! com
[Download RAW message or body]
Sort of off topic, but sort of related. If you're having tremendous
trouble using the built in replication methods, we built a redis based
session manager: https://github.com/exabrial/redex-sm
Currently redex-sm only works with Tomcat 8.5, but it wouldn't be a
big leap to make it work with Tomcat 10. The advantage of using Redis
to store your sessions is it's a well trodden path to set up a
replicated Redis cluster, you have a lot of tooling around exploring
sessions stored inside there, and you can store hundreds-of-thousands
of sessions, or even set them to absurd timeouts (weeks).
I hate to see people struggle with session replication, as I think it
really is the secret to making server-side-rendering scale out.
On Sat, Apr 13, 2024 at 3:01 PM Chuck Caldarale <n828cl@gmail.com> wrote:
>
>
> > On Apr 11, 2024, at 09:07, Rick Noel <RNoel@westwoodone.com.INVALID> wrote:
> >
> > We are getting closer
> > Changing ports from the 5000 range to the 4000 range stopped two errors
> > But now I get this..........
> >
> > INFO: Manager [##0001]: skipping state transfer. No members active in cluster \
> > group
> > How to I make the member machine in the cluster active?
>
>
> There's a cluster configuration option that may be coming into play here: \
> localLoopbackDisabled. Once upon a time, the JDK method: \
> MulticastSocket.setLoopbackMode(boolean disable) did the opposite of what one might \
> think from just the method name - passing in true disabled local receipt of \
> multicast packets. That method has since been deprecated, and Tomcat currently uses \
> this method: <T> DatagramSocket.setOption(SocketOption<T> name, T value)
> which, at least in Java 21, operates as you might expect from the name - specifying \
> true enables multicast loopback.
> However, there's some interesting logic in Tomcat's handling of \
> localLoopbackDisabled that can inverts the config value based on the Java level, \
> along with this comment: Java < 14, a value of true means loopback is disabled. \
> Java 14+ a value of true means loopback is enabled.
> Having not dug into the JRE source code for the various Java versions, I'm not yet \
> convinced the version checking logic is correct. You might try setting \
> localLoopbackDisabled to true in your <Membership … /> config to see if that has \
> an effect on your dev system.
> Also, let us know what Java version you're using.
>
> - Chuck
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
--
Jonathan | exabrial@gmail.com
Pessimists, see a jar as half empty. Optimists, in contrast, see it as
half full.
Engineers, of course, understand the glass is twice as big as it needs to be.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic