You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Clemens Eisserer <li...@gmail.com> on 2017/07/25 13:54:14 UTC
Most strict / conservative setting for SimpleTcpCluster - channelSendOptions
Hi there,
What is the strictest / most conservative setting for
channelSendOptions when using SimpleTcpCluster for session replication
(synchronous + ack + ??) ?
I have a web-app where each request dependes on the session-state of
the previous one and unfortunatelyI have to deploy in an environment
where a round-robin load-balancer is used.
I had a look at the documentation (the examples online were not that
clear - in the docs it is only mentioned 8 is async, whereas 6 is
later used without any explanation), however to be honest I am not
sure which combination I actually require.
Thank you in advance, Clemens
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Most strict / conservative setting for SimpleTcpCluster -
channelSendOptions
Posted by Christopher Schultz <ch...@christopherschultz.net>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Clemens,
On 7/25/17 9:54 AM, Clemens Eisserer wrote:
> Hi there,
>
> What is the strictest / most conservative setting for
> channelSendOptions when using SimpleTcpCluster for session
> replication (synchronous + ack + ??) ? I have a web-app where each
> request dependes on the session-state of the previous one and
> unfortunatelyI have to deploy in an environment where a round-robin
> load-balancer is used.
What happens if the user makes two requests at once?
> I had a look at the documentation (the examples online were not
> that clear - in the docs it is only mentioned 8 is async, whereas 6
> is later used without any explanation), however to be honest I am
> not sure which combination I actually require.
The channelSendOptions are a bitwise-OR'd combination of flags. Each
flag is a certain power of two (a single 1 bit) so if you see a value
that isn't a power of two (like 6), then you need to decompose that
number into its parts:
6 = 0110b
^^
|+------ 0010 = 2 = "Use Ack"
+------- 0100 = 4 = "Synchronized Ack"
So channelSendOptions="6" means "use ack, and use synchronized ack".
I'm not expert, but it seems you really only have two options:
1. Use ACK (yes/no)
and
2. If you use ACK, do you want them to be synchronous or asynchronous
I'm not sure why there are 3 options, here, since 2 of them make no
sense when the "Use ACK" is not set.
For a "conservative" configuration (where, I believe you mean that you
want to guarantee delivery and as much consistency as possible, at the
cost of performance), I believe you want "Use ACK" and "Sync ACK"
which would be that value of "6" you mentioned earlier.
- -chris
References:
https://tomcat.apache.org/tomcat-8.0-doc/config/cluster.html#Attributes
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
iQIcBAEBCAAGBQJZd5J9AAoJEBzwKT+lPKRYNDkP/R8mOo0rnC6nfUzP/VH1N9Qw
5hrh/nEqNv8rpE6WHoVcZUMlPvZJ1TBLF+2N6WvE4to218gzTrfXz+9pGvStxDYH
fclJ4mUn8LGj3yrLz9/7s1LhB0NeWVznmpnmoNJmcbnB6QEVjwpACIZ8SwkN6pjr
JwQWLf6rENcdbhsBLpEK8+j2s/hHoJpH5qAbK8yYa7Q2ZOypVswrg8fj9tDVJ/sy
6+wVPkECB5cJZyNMMPQl7qMzVmTDnB4hKLYRKmzVMr99hVOjuh3jq05Q0PE4dWy8
o6+YuzTwM4IAX20YA42qhs/qDtEozP2VRcrcw/PXlf/TIy7gRYpcIwbL5Yo4Fk3s
s5ytp4EWhxvDHN0t2fTC4eVV9SYLlJAK5voDqIIFzjqu7l7hNFB9PETj6xvE0jHo
KaxdbDXastiNQeHEQFiP3r03PR+C0dLl38BRdxUVRGj8mrpwt2ouLauxNQ1AyInd
ygCDDB/Zqv+RJuM3JFSTE5c1+h8Ux8GtXbW5WDnCwEvjTWYVrLNQcdxNCLpaFqa8
aQdGKKK0YCFdlh5eR9HiDRdC1dnoECAePpK78rHjwIblIit/ov3V7PkYmZVZ/69h
2sSOBVi3KYz/D6uuCHHXVMGxlfcqrEf2jP+1smvVGC/xONQMXI+2K1MwxXH7dgKy
jzpmx6sXWsurDHM1Cj8w
=H4JM
-----END PGP SIGNATURE-----
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org