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