I have two instances of Tomcat 7.0.8 running in the same machine (Tomcat7A and Tomcat7B) and IIS 7.5 acting as front-end load-balancer with isapi-redirector 1.2.31, running on Windows 2008 R2.
When i disconnect the instance wich is handling a request i can see a new instance being assigned with the same sessionid but then the user is redirected to the login page.
server.xml configuration file
<Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat7A">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
channelSendOptions="8">
<Manager className="org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Membership className="org.apache.catalina.tribes.membership.McastService"
address="228.0.0.8"
bind="7.3.1.22"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="auto"
port="4200"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
filter=".*\.gif;.*\.js;.*\.jpg;.*\.htm;.*\.html;.*\.txt"/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
<ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" resolveHosts="false"/>
</Host>
</Engine>
worker_mount_file=C:\tomcat\iis\conf\uriworkermap_prod.properties
worker.list = balancer,status
worker.Tomcat7B.host = 7.3.1.22
worker.Tomcat7B.type = ajp13
worker.Tomcat7B.port = 8010
worker.Tomcat7B.lbfactor = 10
worker.Tomcat7A.host = 7.3.1.22
worker.Tomcat7A.type = ajp13
worker.Tomcat7A.port = 8009
worker.Tomcat7A.lbfactor = 10
worker.balancer.type = lb
worker.balancer.sticky_session = 1
worker.balancer.balance_workers = Tomcat7B, Tomcat7A
worker.status.type = status
isapi_redirect log
[debug] wc_get_worker_for_name::jk_worker.c (116): found a worker balancer
[debug] HttpExtensionProc::jk_isapi_plugin.c (2188): got a worker for name balancer
[debug] service::jk_lb_worker.c (1118): service sticky_session=1 id='89569C584CC4F58740D649C4BE655D36.Tomcat7B'
[debug] get_most_suitable_worker::jk_lb_worker.c (946): searching worker for partial sessionid 89569C584CC4F58740D649C4BE655D36.Tomcat7B
[debug] get_most_suitable_worker::jk_lb_worker.c (954): searching worker for session route Tomcat7B
[debug] get_most_suitable_worker::jk_lb_worker.c (968): found worker Tomcat7B (Tomcat7B) for route Tomcat7B and partial sessionid 89569C584CC4F58740D649C4BE655D36.Tomcat7B
[debug] service::jk_lb_worker.c (1161): service worker=Tomcat7B route=Tomcat7B
[debug] ajp_get_endpoint::jk_ajp_common.c (3096): acquired connection pool slot=0 after 0 retries
[debug] ajp_marshal_into_msgb::jk_ajp_common.c (605): ajp marshaling done
[debug] ajp_service::jk_ajp_common.c (2379): processing Tomcat7B with 2 retries
[debug] jk_shutdown_socket::jk_connect.c (726): About to shutdown socket 820 [7.3.1.22:24482 -> 7.3.1.22:8010]
[debug] jk_shutdown_socket::jk_connect.c (797): shutting down the read side of socket 820 [7.3.1.22:24482 -> 7.3.1.22:8010]
[debug] jk_shutdown_socket::jk_connect.c (808): Shutdown socket 820 [7.3.1.22:24482 -> 7.3.1.22:8010] and read 0 lingering bytes in 0 sec.
[debug] ajp_send_request::jk_ajp_common.c (1496): (Tomcat7B) failed sending request, socket 820 is not connected any more (errno=-10000)
[debug] ajp_next_connection::jk_ajp_common.c (823): (Tomcat7B) Will try pooled connection socket 896 from slot 1
[debug] jk_shutdown_socket::jk_connect.c (726): About to shutdown socket 896 [7.3.1.22:24488 -> 7.3.1.22:8010]
[debug] jk_shutdown_socket::jk_connect.c (797): shutting down the read side of socket 896 [7.3.1.22:24488 -> 7.3.1.22:8010]
[debug] jk_shutdown_socket::jk_connect.c (808): Shutdown socket 896 [7.3.1.22:24488 -> 7.3.1.22:8010] and read 0 lingering bytes in 0 sec.
[debug] ajp_send_request::jk_ajp_common.c (1496): (Tomcat7B) failed sending request, socket 896 is not connected any more (errno=-10000)
[info] ajp_send_request::jk_ajp_common.c (1567): (Tomcat7B) all endpoints are disconnected, detected by connect check (2), cping (0), send (0)
[debug] jk_open_socket::jk_connect.c (484): socket TCP_NODELAY set to On
[debug] jk_open_socket::jk_connect.c (608): trying to connect socket 896 to 7.3.1.22:8010
[info] jk_open_socket::jk_connect.c (626): connect to 7.3.1.22:8010 failed (errno=61)
[info] ajp_connect_to_endpoint::jk_ajp_common.c (959): Failed opening socket to (7.3.1.22:8010) (errno=61)
[error] ajp_send_request::jk_ajp_common.c (1578): (Tomcat7B) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=61)
[info] ajp_service::jk_ajp_common.c (2543): (Tomcat7B) sending request to tomcat failed (recoverable), because of error during request sending (attempt=1)
[debug] ajp_service::jk_ajp_common.c (2400): retry 1, sleeping for 100 ms before retrying
[debug] ajp_send_request::jk_ajp_common.c (1572): (Tomcat7B) all endpoints are disconnected.
[debug] jk_open_socket::jk_connect.c (484): socket TCP_NODELAY set to On
[debug] jk_open_socket::jk_connect.c (608): trying to connect socket 896 to 7.3.1.22:8010
[info] jk_open_socket::jk_connect.c (626): connect to 7.3.1.22:8010 failed (errno=61)
[info] ajp_connect_to_endpoint::jk_ajp_common.c (959): Failed opening socket to (7.3.1.22:8010) (errno=61)
[error] ajp_send_request::jk_ajp_common.c (1578): (Tomcat7B) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=61)
[info] ajp_service::jk_ajp_common.c (2543): (Tomcat7B) sending request to tomcat failed (recoverable), because of error during request sending (attempt=2)
[error] ajp_service::jk_ajp_common.c (2562): (Tomcat7B) connecting to tomcat failed.
[debug] ajp_reset_endpoint::jk_ajp_common.c (757): (Tomcat7B) resetting endpoint with socket -1 (socket shutdown)
[debug] ajp_done::jk_ajp_common.c (3013): recycling connection pool slot=0 for worker Tomcat7B
[debug] service::jk_lb_worker.c (1374): worker Tomcat7B escalating local error to global error
[info] service::jk_lb_worker.c (1388): service failed, worker Tomcat7B is in error state
[debug] service::jk_lb_worker.c (1399): recoverable error... will try to recover on other worker
[debug] get_most_suitable_worker::jk_lb_worker.c (946): searching worker for partial sessionid 89569C584CC4F58740D649C4BE655D36.Tomcat7B
[debug] get_most_suitable_worker::jk_lb_worker.c (954): searching worker for session route Tomcat7B
[debug] get_most_suitable_worker::jk_lb_worker.c (1001): found best worker Tomcat7A (Tomcat7A) using method 'Request'
[debug] service::jk_lb_worker.c (1161): service worker=Tomcat7A route=Tomcat7B
[debug] ajp_get_endpoint::jk_ajp_common.c (3096): acquired connection pool slot=0 after 0 retries
[debug] ajp_marshal_into_msgb::jk_ajp_common.c (605): ajp marshaling done
[debug] ajp_service::jk_ajp_common.c (2379): processing Tomcat7A with 2 retries
[debug] ajp_send_request::jk_ajp_common.c (1572): (Tomcat7A) all endpoints are disconnected.
[debug] jk_open_socket::jk_connect.c (484): socket TCP_NODELAY set to On
[debug] jk_open_socket::jk_connect.c (608): trying to connect socket 896 to 7.3.1.22:8009
[debug] jk_open_socket::jk_connect.c (634): socket 896 [7.3.1.22:24496 -> 7.3.1.22:8009] connected
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): sending to ajp13 pos=4 len=615 max=8192
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0000 .4.c....HTTP/1.1
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0010 .../Accounter/pr
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0020 intFrameSet.jhtm
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0030 l...::1...::1...
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0040 localhost..P....
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0050 ...Keep-Alive...
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0060 ..0....rimage/jp
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0070 eg,.image/gif,.i
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0080 mage/pjpeg,.appl
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0090 ication/x-ms-app
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00a0 lication,.applic
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00b0 ation/xaml+xml,.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00c0 application/x-ms
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00d0 -xbap,.*/*...Acc
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00e0 ept-Encoding...g
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00f0 zip,.deflate...A
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0100 ccept-Language..
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0110 .nb-NO....]Usern
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0120 ame=NA_jose.mati
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0130 as_AT_addenergy.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0140 no;.JSESSIONID=8
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0150 9569C584CC4F5874
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0160 0D649C4BE655D36.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0170 Tomcat7B.....loc
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0180 alhost.....http:
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0190 //localhost/Acco
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01a0 unter/NemsAccoun
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01b0 ter.jhtml....uMo
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01c0 zilla/4.0.(compa
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01d0 tible;.MSIE.8.0;
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01e0 .Windows.NT.6.1;
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01f0 .WOW64;.Trident/
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0200 4.0;.SLCC2;..NET
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0210 .CLR.2.0.50727;.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0220 .NET4.0C;..NET4.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0230 0E)............F
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0240 rameName=Reports
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0250 _CS_EUETS....Tom
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0260 cat7B...........
[debug] ajp_send_request::jk_ajp_common.c (1632): (Tomcat7A) request body to send 0 - request body to resend 0
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): received from ajp13 pos=0 len=238 max=8192
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0000 .....Moved.Tempo
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0010 rarily......OJSE
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0020 SSIONID=6A2507A4
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0030 626F698EC74A733C
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0040 DBA7D9FE.Tomcat7
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0050 A;.Path=/Account
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0060 er;.HttpOnly...P
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0070 ragma...no-cache
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0080 ...Cache-Control
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0090 ...no-cache....&
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 00a0 http://localhost
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 00b0 /Accounter/login
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 00c0 .jhtml.....text/
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 00d0 html;charset=ISO
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 00e0 -8859-1.....0...
[debug] ajp_unmarshal_response::jk_ajp_common.c (660): status = 302
[debug] ajp_unmarshal_response::jk_ajp_common.c (667): Number of headers is = 6
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[0] [Set-Cookie] = [JSESSIONID=6A2507A4626F698EC74A733CDBA7D9FE.Tomcat7A; Path=/Accounter; HttpOnly]
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[1] [Pragma] = [no-cache]
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[2] [Cache-Control] = [no-cache]
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[3] [Location] = [http://localhost/Accounter/login.jhtml]
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[4] [Content-Type] = [text/html;charset=ISO-8859-1]
[debug] ajp_unmarshal_response::jk_ajp_common.c (723): Header[5] [Content-Length] = [0]
[debug] start_response::jk_isapi_plugin.c (963): Starting response for URI '/Accounter/printFrameSet.jhtml' (protocol HTTP/1.1)
[debug] start_response::jk_isapi_plugin.c (1063): Not using Keep-Alive
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): received from ajp13 pos=0 len=2 max=8192
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0000 ................
[debug] ajp_process_callback::jk_ajp_common.c (1943): AJP13 protocol: Reuse is OK
[debug] ajp_reset_endpoint::jk_ajp_common.c (757): (Tomcat7A) resetting endpoint with socket 896
[debug] ajp_done::jk_ajp_common.c (3013): recycling connection pool slot=0 for worker Tomcat7A
[debug] HttpExtensionProc::jk_isapi_plugin.c (2211): service() returned OK
[debug] HttpFilterProc::jk_isapi_plugin.c (1851): Filter started
[debug] map_uri_to_worker_ext::jk_uri_worker_map.c (1036): Attempting to map URI '/localhost/Accounter/login.jhtml' from 8 maps
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/servlet/*=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/ws/*=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/nems*.pdf=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/*.service=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/*.jhtml=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/*.json=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/jkmanager=status' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/servlet/*=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/ws/*=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/nems*.pdf=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/*.service=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (850): Attempting to map context URI '/Accounter/*.jhtml=balancer' source 'uriworkermap'
[debug] find_match::jk_uri_worker_map.c (863): Found a wildchar match '/Accounter/*.jhtml=balancer'
[debug] HttpFilterProc::jk_isapi_plugin.c (1938): check if [/Accounter/login.jhtml] points to the web-inf directory
[debug] HttpFilterProc::jk_isapi_plugin.c (1954): [/Accounter/login.jhtml] is a servlet url - should redirect to balancer
[debug] HttpFilterProc::jk_isapi_plugin.c (1994): fowarding escaped URI [/Accounter/login.jhtml]
[debug] init_ws_service::jk_isapi_plugin.c (2982): Reading extension header HTTP_TOMCATWORKER0000000180000000: balancer
[debug] init_ws_service::jk_isapi_plugin.c (2983): Reading extension header HTTP_TOMCATWORKERIDX0000000180000000: 5
[debug] init_ws_service::jk_isapi_plugin.c (2984): Reading extension header HTTP_TOMCATURI0000000180000000: /Accounter/login.jhtml
[debug] init_ws_service::jk_isapi_plugin.c (2985): Reading extension header HTTP_TOMCATQUERY0000000180000000: (null)
[debug] init_ws_service::jk_isapi_plugin.c (3040): Applying service extensions
[debug] init_ws_service::jk_isapi_plugin.c (3298): Service protocol=HTTP/1.1 method=GET host=::1 addr=::1 name=localhost port=80 auth= user= uri=/Accounter/login.jhtml
[debug] init_ws_service::jk_isapi_plugin.c (3310): Service request headers=9 attributes=0 chunked=no content-length=0 available=0
[debug] wc_get_worker_for_name::jk_worker.c (116): found a worker balancer
[debug] HttpExtensionProc::jk_isapi_plugin.c (2188): got a worker for name balancer
[debug] service::jk_lb_worker.c (1118): service sticky_session=1 id='6A2507A4626F698EC74A733CDBA7D9FE.Tomcat7A'
[debug] get_most_suitable_worker::jk_lb_worker.c (946): searching worker for partial sessionid 6A2507A4626F698EC74A733CDBA7D9FE.Tomcat7A
[debug] get_most_suitable_worker::jk_lb_worker.c (954): searching worker for session route Tomcat7A
[debug] get_most_suitable_worker::jk_lb_worker.c (968): found worker Tomcat7A (Tomcat7A) for route Tomcat7A and partial sessionid 6A2507A4626F698EC74A733CDBA7D9FE.Tomcat7A
[debug] service::jk_lb_worker.c (1161): service worker=Tomcat7A route=Tomcat7A
[debug] ajp_get_endpoint::jk_ajp_common.c (3096): acquired connection pool slot=0 after 0 retries
[debug] ajp_marshal_into_msgb::jk_ajp_common.c (605): ajp marshaling done
[debug] ajp_service::jk_ajp_common.c (2379): processing Tomcat7A with 2 retries
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): sending to ajp13 pos=4 len=577 max=8192
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0000 .4.=....HTTP/1.1
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0010 .../Accounter/lo
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0020 gin.jhtml...::1.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0030 ..::1...localhos
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0040 t..P.......Keep-
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0050 Alive.....0....r
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0060 image/jpeg,.imag
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0070 e/gif,.image/pjp
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0080 eg,.application/
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0090 x-ms-application
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00a0 ,.application/xa
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00b0 ml+xml,.applicat
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00c0 ion/x-ms-xbap,.*
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00d0 /*...Accept-Enco
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00e0 ding...gzip,.def
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 00f0 late...Accept-La
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0100 nguage...nb-NO..
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0110 ..]Username=NA_j
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0120 ose.matias_AT_ad
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0130 denergy.no;.JSES
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0140 SIONID=6A2507A46
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0150 26F698EC74A733CD
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0160 BA7D9FE.Tomcat7A
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0170 .....localhost..
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0180 ...http://localh
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0190 ost/Accounter/Ne
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01a0 msAccounter.jhtm
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01b0 l....uMozilla/4.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01c0 0.(compatible;.M
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01d0 SIE.8.0;.Windows
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01f0 Trident/4.0;.SLC
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 01e0 .NT.6.1;.WOW64;.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0200 C2;..NET.CLR.2.0
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0210 .50727;..NET4.0C
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0220 ;..NET4.0E).....
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0230 .......Tomcat7A.
[debug] ajp_connection_tcp_send_message::jk_ajp_common.c (1145): 0240 ................
[debug] ajp_send_request::jk_ajp_common.c (1621): (Tomcat7A) Statistics about invalid connections: connect check (0), cping (0), send (0)
[debug] ajp_send_request::jk_ajp_common.c (1632): (Tomcat7A) request body to send 0 - request body to resend 0
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): received from ajp13 pos=0 len=135 max=8192
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0000 .....OK.....Prag
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0010 ma...no-cache...
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0020 Expires...Thu,.0
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0030 1.Jan.1970.00:00
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0040 :00.GMT...Cache-
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0050 Control...no-cac
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0060 he...Cache-Contr
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0070 ol...no-store...
[debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1329): 0080 ..2995..........
Best Answer
Setting up a cluster on the Tomcat side which does session replication often involves more than just editing server.xml. Often you have to mark your applications as "distributable" in web.xml, and potentially do other things. Also, all of the classes you put into a session must implement the serializable interface.
Finally, beware the Jakarta ISAPI plugin for IIS - it is a port from Apache mod_jk, and is quite broken, at least at high load. We have a 7-server tomcat cluster (300 req/sec peaks) and eventually switched to using nginx on Linux on the front end instead of IIS because the ISAPI_redirect.dll would spontaneously stop serving anything at high load (with nothing in the error logs and no other evidence of problems in perfmon). IIS 7.5 Application request routing plugin might be a better option if you want to stay all-windows.