On Sun, Oct 14, 2012 at 10:39 PM, TArak <lifewithqm...@gmail.com> wrote:

> Dear List,
>
> I am having a Tomcat7 cluster of in-memory session replication.
>
> Tomcat-A - 192.168.1.100
> Tomcat-B - 192.168.1.101
>
> I have simple application which does the login before navigating to the
> pages. I have apache configured with mod_jk to handle sticky sessions.
>
> when I am accessing the url , http://www.example.com the session is
> getting established in one of the Tomcat server, suppose it established in
> Tomcat-B. I starts navigating the pages after login.
>
> Now I stopped Tomcat-B, in this can my session continues in Tomcat-A &
> it's doesn't ask me for relogin to upon clicking in any links.
>
> Problem starts when I try to starts Tomcat-B, when it's completely starts
> & try to navigating any link on the same session , it's starts asking for
> relogin.
>
>
> Tomcat-B --> Tomcat-A , Tomcat-B Stops , no relogin. Tomcat-B  starts ,
> relogin
>
> Tomcat-A --> Tomcat-B , Tomcat-A Stops , no relogin. Tomcat-A  starts ,
> relogin
>
> Below is my server.xml, context.xml, web.xml, workers.properties &
> httpd.conf .
>
>
> Server.xml:
> <Engine name="Catalina" defaultHost="localhost" jvmRoute="app1"> / <Engine
> name="Catalina" defaultHost="localhost" jvmRoute="app2">
>
> <alias>www.example.com</alias>
>       </Host>
>     <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
>               channelSendOptions="8">
>           <Manager className="org.apache.catalina.ha.session.DeltaManager"
>                    expireSessionsOnShutdown="false"
>            useDirtyFlag="true"
>                    notifyListenersOnReplication="true"/>
>           <Channel
> className="org.apache.catalina.tribes.group.GroupChannel">
>                <Membership
> className="org.apache.catalina.tribes.membership.McastService"
>                            address="228.0.0.4"
>                            port="45564"
>                            frequency="500"
>                            dropTime="3000"/>
>                <Receiver
> className="org.apache.catalina.tribes.transport.nio.NioReceiver"
>                          address="auto"
>                          port="4000"
>                          autoBind="100"
>                          selectorTimeout="5000"
>                          maxThreads="6"/>
>                <Sender
> className="org.apache.catalina.tribes.transport.ReplicationTransmitter"
> replicationMode="pooled" ackTimeout="15000" waitForAck="true">
>                    <Transport
> className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"
> timeout="30000"/>
>                </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;.*\.png;.*\.html;.*\.css;.*\.txt;"/>
>                 <Valve
> className="org.apache.catalina.ha.session.JvmRouteBinderValve"
> enabled="true" sessionIdAttribute="takeoverSessionid"/>
>
>                 <ClusterListener
> className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
>                 <ClusterListener
> className="org.apache.catalina.ha.session.ClusterSessionListener"/>
>          </Cluster>
>
>
> web.xml
>
> <distributable/>
> </web-app>
>
>
> context.xml
> <Context distributable="true">
>
> workers.properties
> worker.list=loadbalancer,status
>
> #setup app1
> worker.app1.port=8009
> worker.app1.host=192.168.1.100
> worker.app1.type=ajp13
> worker.app1.lbfactor=50
>
> #setup app2
> worker.app2.port=8009
> worker.app2.host=192.168.1.101
> worker.app2.type=ajp13
> worker.app2.lbfactor=50
>
> #setup the load-balancer
> worker.loadbalancer.type=lb
> worker.loadbalancer.balance_workers=app1,app2
> worker.loadbalancer.sticky_session=True
> worker.loadbalancer.sticky_session_force=True
>
> # Status worker for managing load balancer
> worker.status.type=status
>
> httpd.conf
>
> JkWorkersFile conf/workers.properties
> JkLogFile logs/mod_jk.log
> JkLogStampFormat "[%b %d %Y - %H:%M:%S] "
> JkRequestLogFormat "%w %V %T"
> JkLogLevel info
> JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
>
> <VirtualHost *>
>   ServerAdmin exam...@example.com
>   ServerAlias www.example.com
>   JkMount /* loadbalancer
>   JkMount /status/* status
> </VirtualHost>
>
>
Has anyone faced the same issue....

Reply via email to