Tomcat session issue

View: New views
5 Messages — Rating Filter:   Alert me  

Tomcat session issue

by Robert Hanson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I am a new user, running TC3.  I have two servers, each is running a
TC server and a TC client (Tomcat), in different geographic locations,
for the purpose of session replication.

TC is handling the creation of Tomcat sessions (I see no Tomcat
sessions in the manager app) and I do see the sessions in the TC Dev
Console.

The problem is that when I switch between the two servers, sometimes
TC creates a new session.  I am not sure how to debug this.  Perhaps
the two TC servers aren't syncing properly, or often enough?

The only odd thing is that I specified the webapp as "ROOT", but there
are actually 2 roots.  I have one instance of Tomcat running, but have
it binding to both 8080 and 8081, each of which has its own webapps
directory, and its own ROOT application.

The TC config is below.  Any help, even pointing me to relevant docs
would be helpful.

Thanks.


<tc:tc-config xmlns:tc="http://www.terracotta.org/config"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-4.xsd">

        <tc-properties>
                <property name="l2.l1reconnect.enabled" value="true" />
                <property name="l2.healthcheck.l2.ping.enabled" value="true" />
                <property
name="l2.objectmanager.fault.logging.enabled" value="true" />
        </tc-properties>

        <servers>
                <server host="1.1.1.1" name="galileo">
                        <data>/usr/local/terracotta/data/galileo</data>
                        <logs>/usr/local/terracotta/logs/galileo</logs>
                        <l2-group-port>9530</l2-group-port>
                        <dso-port>9510</dso-port>
                        <dso>
                                <persistence>
                                        <mode>permanent-store</mode>
                                </persistence>
                        </dso>
                </server>

                <server host="2.2.2.2" name="pasteur">
                        <data>/usr/local/terracotta/data/pasteur</data>
                        <logs>/usr/local/terracotta/logs/pasteur</logs>
                        <l2-group-port>9530</l2-group-port>
                        <dso-port>9510</dso-port>
                        <dso>
                                <persistence>
                                        <mode>permanent-store</mode>
                                </persistence>
                        </dso>
                </server>

                <mirror-groups>
                        <mirror-group group-name="public-web">
                                <members>
                                        <member>galileo</member>
                                        <member>pasteur</member>
                                </members>
                        </mirror-group>
                </mirror-groups>

                <ha>
                        <mode>networked-active-passive</mode>
                        <networked-active-passive>
                                <election-time>5</election-time>
                        </networked-active-passive>
                </ha>

                <update-check>
                        <enabled>true</enabled>
                </update-check>
        </servers>

        <clients>
                <logs>/usr/local/terracotta/logs/client-logs</logs>

<statistics>/usr/local/terracotta/data/%(tc.node-name)/client-statistics</statistics>
                <modules>
                        <module name="tim-tomcat-6.0" version="1.0.1" />
                        <module name="tim-spring-security-2.0"
version="1.1.1" />
                </modules>
        </clients>

        <application>
                <dso>
                        <instrumented-classes>
                                <include>

<class-expression>com.company.model.*</class-expression>
                                </include>
                        </instrumented-classes>

                        <web-applications>
                                <web-application>ROOT</web-application>
                        </web-applications>
                </dso>
        </application>

</tc:tc-config>
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users

Re: Tomcat session issue

by Robert Hanson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

One of my servers is newly installed, and the date/time is off by 2
weeks.  Would this cause the symptoms that I am seeing?  Namely that
fact that failing over between servers sometimes works, and sometimes
issues me a new session.

Is there anything else I might be missing?

Thanks.

Rob



On Mon, May 18, 2009 at 9:48 AM, Robert Hanson
<iamroberthanson@...> wrote:

> I am a new user, running TC3.  I have two servers, each is running a
> TC server and a TC client (Tomcat), in different geographic locations,
> for the purpose of session replication.
>
> TC is handling the creation of Tomcat sessions (I see no Tomcat
> sessions in the manager app) and I do see the sessions in the TC Dev
> Console.
>
> The problem is that when I switch between the two servers, sometimes
> TC creates a new session.  I am not sure how to debug this.  Perhaps
> the two TC servers aren't syncing properly, or often enough?
>
> The only odd thing is that I specified the webapp as "ROOT", but there
> are actually 2 roots.  I have one instance of Tomcat running, but have
> it binding to both 8080 and 8081, each of which has its own webapps
> directory, and its own ROOT application.
>
> The TC config is below.  Any help, even pointing me to relevant docs
> would be helpful.
>
> Thanks.
>
>
> <tc:tc-config xmlns:tc="http://www.terracotta.org/config"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-4.xsd">
>
>        <tc-properties>
>                <property name="l2.l1reconnect.enabled" value="true" />
>                <property name="l2.healthcheck.l2.ping.enabled" value="true" />
>                <property
> name="l2.objectmanager.fault.logging.enabled" value="true" />
>        </tc-properties>
>
>        <servers>
>                <server host="1.1.1.1" name="galileo">
>                        <data>/usr/local/terracotta/data/galileo</data>
>                        <logs>/usr/local/terracotta/logs/galileo</logs>
>                        <l2-group-port>9530</l2-group-port>
>                        <dso-port>9510</dso-port>
>                        <dso>
>                                <persistence>
>                                        <mode>permanent-store</mode>
>                                </persistence>
>                        </dso>
>                </server>
>
>                <server host="2.2.2.2" name="pasteur">
>                        <data>/usr/local/terracotta/data/pasteur</data>
>                        <logs>/usr/local/terracotta/logs/pasteur</logs>
>                        <l2-group-port>9530</l2-group-port>
>                        <dso-port>9510</dso-port>
>                        <dso>
>                                <persistence>
>                                        <mode>permanent-store</mode>
>                                </persistence>
>                        </dso>
>                </server>
>
>                <mirror-groups>
>                        <mirror-group group-name="public-web">
>                                <members>
>                                        <member>galileo</member>
>                                        <member>pasteur</member>
>                                </members>
>                        </mirror-group>
>                </mirror-groups>
>
>                <ha>
>                        <mode>networked-active-passive</mode>
>                        <networked-active-passive>
>                                <election-time>5</election-time>
>                        </networked-active-passive>
>                </ha>
>
>                <update-check>
>                        <enabled>true</enabled>
>                </update-check>
>        </servers>
>
>        <clients>
>                <logs>/usr/local/terracotta/logs/client-logs</logs>
>
> <statistics>/usr/local/terracotta/data/%(tc.node-name)/client-statistics</statistics>
>                <modules>
>                        <module name="tim-tomcat-6.0" version="1.0.1" />
>                        <module name="tim-spring-security-2.0"
> version="1.1.1" />
>                </modules>
>        </clients>
>
>        <application>
>                <dso>
>                        <instrumented-classes>
>                                <include>
>
> <class-expression>com.company.model.*</class-expression>
>                                </include>
>                        </instrumented-classes>
>
>                        <web-applications>
>                                <web-application>ROOT</web-application>
>                        </web-applications>
>                </dso>
>        </application>
>
> </tc:tc-config>
>
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users

Re: Tomcat session issue

by Igal Levy :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

see this http://www.terracotta.org/web/display/orgsite/Tomcat+Integration#TomcatIntegration-SessionContinuityAcrossServers

it might help!

---------------------------------------------------
Igal D. Levy
Terracotta Inc.
terracotta.org | terracottatech.com
415-738-4026

----- Original Message -----
From: "Robert Hanson" <iamroberthanson@...>
To: tc-users@...
Sent: Monday, May 18, 2009 9:08:46 AM GMT -08:00 US/Canada Pacific
Subject: Re: [tc-users] Tomcat session issue

One of my servers is newly installed, and the date/time is off by 2
weeks.  Would this cause the symptoms that I am seeing?  Namely that
fact that failing over between servers sometimes works, and sometimes
issues me a new session.

Is there anything else I might be missing?

Thanks.

Rob



On Mon, May 18, 2009 at 9:48 AM, Robert Hanson
<iamroberthanson@...> wrote:

> I am a new user, running TC3.  I have two servers, each is running a
> TC server and a TC client (Tomcat), in different geographic locations,
> for the purpose of session replication.
>
> TC is handling the creation of Tomcat sessions (I see no Tomcat
> sessions in the manager app) and I do see the sessions in the TC Dev
> Console.
>
> The problem is that when I switch between the two servers, sometimes
> TC creates a new session.  I am not sure how to debug this.  Perhaps
> the two TC servers aren't syncing properly, or often enough?
>
> The only odd thing is that I specified the webapp as "ROOT", but there
> are actually 2 roots.  I have one instance of Tomcat running, but have
> it binding to both 8080 and 8081, each of which has its own webapps
> directory, and its own ROOT application.
>
> The TC config is below.  Any help, even pointing me to relevant docs
> would be helpful.
>
> Thanks.
>
>
> <tc:tc-config xmlns:tc="http://www.terracotta.org/config"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-4.xsd">
>
>        <tc-properties>
>                <property name="l2.l1reconnect.enabled" value="true" />
>                <property name="l2.healthcheck.l2.ping.enabled" value="true" />
>                <property
> name="l2.objectmanager.fault.logging.enabled" value="true" />
>        </tc-properties>
>
>        <servers>
>                <server host="1.1.1.1" name="galileo">
>                        <data>/usr/local/terracotta/data/galileo</data>
>                        <logs>/usr/local/terracotta/logs/galileo</logs>
>                        <l2-group-port>9530</l2-group-port>
>                        <dso-port>9510</dso-port>
>                        <dso>
>                                <persistence>
>                                        <mode>permanent-store</mode>
>                                </persistence>
>                        </dso>
>                </server>
>
>                <server host="2.2.2.2" name="pasteur">
>                        <data>/usr/local/terracotta/data/pasteur</data>
>                        <logs>/usr/local/terracotta/logs/pasteur</logs>
>                        <l2-group-port>9530</l2-group-port>
>                        <dso-port>9510</dso-port>
>                        <dso>
>                                <persistence>
>                                        <mode>permanent-store</mode>
>                                </persistence>
>                        </dso>
>                </server>
>
>                <mirror-groups>
>                        <mirror-group group-name="public-web">
>                                <members>
>                                        <member>galileo</member>
>                                        <member>pasteur</member>
>                                </members>
>                        </mirror-group>
>                </mirror-groups>
>
>                <ha>
>                        <mode>networked-active-passive</mode>
>                        <networked-active-passive>
>                                <election-time>5</election-time>
>                        </networked-active-passive>
>                </ha>
>
>                <update-check>
>                        <enabled>true</enabled>
>                </update-check>
>        </servers>
>
>        <clients>
>                <logs>/usr/local/terracotta/logs/client-logs</logs>
>
> <statistics>/usr/local/terracotta/data/%(tc.node-name)/client-statistics</statistics>
>                <modules>
>                        <module name="tim-tomcat-6.0" version="1.0.1" />
>                        <module name="tim-spring-security-2.0"
> version="1.1.1" />
>                </modules>
>        </clients>
>
>        <application>
>                <dso>
>                        <instrumented-classes>
>                                <include>
>
> <class-expression>com.company.model.*</class-expression>
>                                </include>
>                        </instrumented-classes>
>
>                        <web-applications>
>                                <web-application>ROOT</web-application>
>                        </web-applications>
>                </dso>
>        </application>
>
> </tc:tc-config>
>
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users

Re: Tomcat session issue

by teck-terracotta :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

A clock difference that large could easily explain your issue. Please
synchronize your clocks and try again. Also, are the machines configured
for the same timezone offset?

You can get some information in the terracotta log file by passing
-Dcom.tc. session.debug.sessions=true when starting tomcat. This will log
lots of debug information concerning the incoming sessionID, whether
things are expired, etc.

Hope this helps
-tim


> -----Original Message-----
> From: tc-users-bounces@... [mailto:tc-users-
> bounces@...] On Behalf Of Robert Hanson
> Sent: Monday, May 18, 2009 9:09 AM
> To: tc-users@...
> Subject: Re: [tc-users] Tomcat session issue
>
> One of my servers is newly installed, and the date/time is off by 2
> weeks.  Would this cause the symptoms that I am seeing?  Namely that
> fact that failing over between servers sometimes works, and sometimes
> issues me a new session.
>
> Is there anything else I might be missing?
>
> Thanks.
>
> Rob
>
>
>
> On Mon, May 18, 2009 at 9:48 AM, Robert Hanson
> <iamroberthanson@...> wrote:
> > I am a new user, running TC3.  I have two servers, each is running a
> > TC server and a TC client (Tomcat), in different geographic locations,
> > for the purpose of session replication.
> >
> > TC is handling the creation of Tomcat sessions (I see no Tomcat
> > sessions in the manager app) and I do see the sessions in the TC Dev
> > Console.
> >
> > The problem is that when I switch between the two servers, sometimes
> > TC creates a new session.  I am not sure how to debug this.  Perhaps
> > the two TC servers aren't syncing properly, or often enough?
> >
> > The only odd thing is that I specified the webapp as "ROOT", but there
> > are actually 2 roots.  I have one instance of Tomcat running, but have
> > it binding to both 8080 and 8081, each of which has its own webapps
> > directory, and its own ROOT application.
> >
> > The TC config is below.  Any help, even pointing me to relevant docs
> > would be helpful.
> >
> > Thanks.
> >
> >
> > <tc:tc-config xmlns:tc="http://www.terracotta.org/config"
> >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >      
 xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-

> 4.xsd">
> >
> >        <tc-properties>
> >                <property name="l2.l1reconnect.enabled" value="true" />
> >                <property name="l2.healthcheck.l2.ping.enabled"
> value="true" />
> >                <property
> > name="l2.objectmanager.fault.logging.enabled" value="true" />
> >        </tc-properties>
> >
> >        <servers>
> >                <server host="1.1.1.1" name="galileo">
> >                        <data>/usr/local/terracotta/data/galileo</data>
> >                        <logs>/usr/local/terracotta/logs/galileo</logs>
> >                        <l2-group-port>9530</l2-group-port>
> >                        <dso-port>9510</dso-port>
> >                        <dso>
> >                                <persistence>
> >                                        <mode>permanent-store</mode>
> >                                </persistence>
> >                        </dso>
> >                </server>
> >
> >                <server host="2.2.2.2" name="pasteur">
> >                        <data>/usr/local/terracotta/data/pasteur</data>
> >                        <logs>/usr/local/terracotta/logs/pasteur</logs>
> >                        <l2-group-port>9530</l2-group-port>
> >                        <dso-port>9510</dso-port>
> >                        <dso>
> >                                <persistence>
> >                                        <mode>permanent-store</mode>
> >                                </persistence>
> >                        </dso>
> >                </server>
> >
> >                <mirror-groups>
> >                        <mirror-group group-name="public-web">
> >                                <members>
> >                                        <member>galileo</member>
> >                                        <member>pasteur</member>
> >                                </members>
> >                        </mirror-group>
> >                </mirror-groups>
> >
> >                <ha>
> >                        <mode>networked-active-passive</mode>
> >                        <networked-active-passive>
> >                                <election-time>5</election-time>
> >                        </networked-active-passive>
> >                </ha>
> >
> >                <update-check>
> >                        <enabled>true</enabled>
> >                </update-check>
> >        </servers>
> >
> >        <clients>
> >                <logs>/usr/local/terracotta/logs/client-logs</logs>
> >
> > <statistics>/usr/local/terracotta/data/%(tc.node-name)/client-
> statistics</statistics>
> >                <modules>
> >                        <module name="tim-tomcat-6.0" version="1.0.1"
/>

> >                        <module name="tim-spring-security-2.0"
> > version="1.1.1" />
> >                </modules>
> >        </clients>
> >
> >        <application>
> >                <dso>
> >                        <instrumented-classes>
> >                                <include>
> >
> > <class-expression>com.company.model.*</class-expression>
> >                                </include>
> >                        </instrumented-classes>
> >
> >                        <web-applications>
> >                                <web-application>ROOT</web-application>
> >                        </web-applications>
> >                </dso>
> >        </application>
> >
> > </tc:tc-config>
> >
> _______________________________________________
> tc-users mailing list
> tc-users@...
> http://lists.terracotta.org/mailman/listinfo/tc-users
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users

Re: Tomcat session issue

by Robert Hanson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Fixing the time solved the problem.

I will probably also try out the debugging switch (and docs link from
Igal) just so that I can see what it going on.

Many thanks for the info.

Rob



On Mon, May 18, 2009 at 1:16 PM, Tim Eck <teck@...> wrote:

> A clock difference that large could easily explain your issue. Please
> synchronize your clocks and try again. Also, are the machines configured
> for the same timezone offset?
>
> You can get some information in the terracotta log file by passing
> -Dcom.tc. session.debug.sessions=true when starting tomcat. This will log
> lots of debug information concerning the incoming sessionID, whether
> things are expired, etc.
>
> Hope this helps
> -tim
>
>
>> -----Original Message-----
>> From: tc-users-bounces@... [mailto:tc-users-
>> bounces@...] On Behalf Of Robert Hanson
>> Sent: Monday, May 18, 2009 9:09 AM
>> To: tc-users@...
>> Subject: Re: [tc-users] Tomcat session issue
>>
>> One of my servers is newly installed, and the date/time is off by 2
>> weeks.  Would this cause the symptoms that I am seeing?  Namely that
>> fact that failing over between servers sometimes works, and sometimes
>> issues me a new session.
>>
>> Is there anything else I might be missing?
>>
>> Thanks.
>>
>> Rob
>>
>>
>>
>> On Mon, May 18, 2009 at 9:48 AM, Robert Hanson
>> <iamroberthanson@...> wrote:
>> > I am a new user, running TC3.  I have two servers, each is running a
>> > TC server and a TC client (Tomcat), in different geographic locations,
>> > for the purpose of session replication.
>> >
>> > TC is handling the creation of Tomcat sessions (I see no Tomcat
>> > sessions in the manager app) and I do see the sessions in the TC Dev
>> > Console.
>> >
>> > The problem is that when I switch between the two servers, sometimes
>> > TC creates a new session.  I am not sure how to debug this.  Perhaps
>> > the two TC servers aren't syncing properly, or often enough?
>> >
>> > The only odd thing is that I specified the webapp as "ROOT", but there
>> > are actually 2 roots.  I have one instance of Tomcat running, but have
>> > it binding to both 8080 and 8081, each of which has its own webapps
>> > directory, and its own ROOT application.
>> >
>> > The TC config is below.  Any help, even pointing me to relevant docs
>> > would be helpful.
>> >
>> > Thanks.
>> >
>> >
>> > <tc:tc-config xmlns:tc="http://www.terracotta.org/config"
>> >        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> >
>  xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-
>> 4.xsd">
>> >
>> >        <tc-properties>
>> >                <property name="l2.l1reconnect.enabled" value="true" />
>> >                <property name="l2.healthcheck.l2.ping.enabled"
>> value="true" />
>> >                <property
>> > name="l2.objectmanager.fault.logging.enabled" value="true" />
>> >        </tc-properties>
>> >
>> >        <servers>
>> >                <server host="1.1.1.1" name="galileo">
>> >                        <data>/usr/local/terracotta/data/galileo</data>
>> >                        <logs>/usr/local/terracotta/logs/galileo</logs>
>> >                        <l2-group-port>9530</l2-group-port>
>> >                        <dso-port>9510</dso-port>
>> >                        <dso>
>> >                                <persistence>
>> >                                        <mode>permanent-store</mode>
>> >                                </persistence>
>> >                        </dso>
>> >                </server>
>> >
>> >                <server host="2.2.2.2" name="pasteur">
>> >                        <data>/usr/local/terracotta/data/pasteur</data>
>> >                        <logs>/usr/local/terracotta/logs/pasteur</logs>
>> >                        <l2-group-port>9530</l2-group-port>
>> >                        <dso-port>9510</dso-port>
>> >                        <dso>
>> >                                <persistence>
>> >                                        <mode>permanent-store</mode>
>> >                                </persistence>
>> >                        </dso>
>> >                </server>
>> >
>> >                <mirror-groups>
>> >                        <mirror-group group-name="public-web">
>> >                                <members>
>> >                                        <member>galileo</member>
>> >                                        <member>pasteur</member>
>> >                                </members>
>> >                        </mirror-group>
>> >                </mirror-groups>
>> >
>> >                <ha>
>> >                        <mode>networked-active-passive</mode>
>> >                        <networked-active-passive>
>> >                                <election-time>5</election-time>
>> >                        </networked-active-passive>
>> >                </ha>
>> >
>> >                <update-check>
>> >                        <enabled>true</enabled>
>> >                </update-check>
>> >        </servers>
>> >
>> >        <clients>
>> >                <logs>/usr/local/terracotta/logs/client-logs</logs>
>> >
>> > <statistics>/usr/local/terracotta/data/%(tc.node-name)/client-
>> statistics</statistics>
>> >                <modules>
>> >                        <module name="tim-tomcat-6.0" version="1.0.1"
> />
>> >                        <module name="tim-spring-security-2.0"
>> > version="1.1.1" />
>> >                </modules>
>> >        </clients>
>> >
>> >        <application>
>> >                <dso>
>> >                        <instrumented-classes>
>> >                                <include>
>> >
>> > <class-expression>com.company.model.*</class-expression>
>> >                                </include>
>> >                        </instrumented-classes>
>> >
>> >                        <web-applications>
>> >                                <web-application>ROOT</web-application>
>> >                        </web-applications>
>> >                </dso>
>> >        </application>
>> >
>> > </tc:tc-config>
>> >
>> _______________________________________________
>> tc-users mailing list
>> tc-users@...
>> http://lists.terracotta.org/mailman/listinfo/tc-users
> _______________________________________________
> tc-users mailing list
> tc-users@...
> http://lists.terracotta.org/mailman/listinfo/tc-users
>
_______________________________________________
tc-users mailing list
tc-users@...
http://lists.terracotta.org/mailman/listinfo/tc-users