Be aware that Firewalls are known to drop idle TCP conections after a
certain amount of time.

We experienced a similar problem with a DB2 JDBC conection pool through a
Cisco PIX.

What was happening was the conections were closed by the firewall. When they
were re-used, there was an added overhead until Java noticed the socket was
closed, and the reconected it.

We solved it through firewall configuration.

Sérgio

On 6/20/06, Hyatt, Gordon <[EMAIL PROTECTED]> wrote:

We had an application (with connection pooling and validation query)
running on TC5.0.28 (now on TC5.5.17) connecting to MS SQL Server using
the Microsoft JDBC drivers.  When tomcat and the database were on the same
side of the firewall performance was great (averaged < 20ms obtaining
connection and 2-3s running SELECT queries).  (Yes, I actually put tracing
into the code that timed how long it took to acquire the connection, run the
query, and transmit the data back to the client.)

Once we moved the tomcat server outside the firewall (an the SQL Server
stayed inside), the performance degraded horribly (7-10s to obtain
connection, 15-20s to run the simple queries (select by primary key), > 30s
to run the more 'complex' queries, for example SELECT id, name, description
FROM single_table WHERE name LIKE '%a%';).

As a test, I changed the database to PostgreSQL v8.0 (at that time it was
still in beta), changed the driver, and ported the database (dropped all
indices except primary key and foreign keys), the query results were
dramatically different: < 500ms on any query I tried.  I had 2 instanced of
my app on the tomcat server, one using PostgreSQL, the other using MS SQL
Server.  A member of the Network Team sat with me and opened both ports
(1433 and 5432) to the database machine.

I even reconfigured PostgreSQL to use the same port as SQL Server,
restarted tomcat, ran a set of queries using one DB then the other (shutting
the first down, obviously).  The timing was still as dramatically different
as running on 2 different ports.

I know there may have been configuration issues with the firewall that
impeded the performance, but, unfortunately, that (the firewall
configuration) was beyond my control.


Basically, be warned: if you are running your connection to MS SQL Server
(and using the Microsoft JDBC drivers) through a firewall, this MAY be one
contributing factor of your poor performance.

Just my $0.02.

Gord


-----Original Message-----
From: Alex Turner [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 20, 2006 12:42 AM
To: Tomcat Users List
Subject: Re: Tomcat's scalability


On 6/19/06, Leon Rosenberg <[EMAIL PROTECTED]> wrote:
>
> On 6/19/06, Biernatowski Bartosz J <[EMAIL PROTECTED]>
wrote:
> > I am about 90% sure the bottleneck is Tomcat or what's running on top
of
> > Tomcat. Application uses JDBC queries to MS SQL server
> > Chips are Intel Xeon. My monitoring data:
> > Memory utilization under 30%, CPU under 10%. Using hardcore
performance
> > tools and systematic approach.
> > The bottom line is that Tomcat/my application combo don't seem to
handle
> > more than a certain number of users. All I want to do is to up the #
of
> > users by 3.
>
> Sounds like your db connection pool is the problem. Maybe you should
> check whether you have enough connections in the connection pool.


Connection pooling, ahh yes.  This is also a likely problem if you aren't
doing any.


>
> > So far it sounds that the approach of adding separate instance of
Tomcat
> and
> > using round robin is better than adding a separate JVM.
> I think both options are equal. How do you plan to run a separate
> tomcat in the same JVM?


Both options are equaly stupid.  Putting multiple intances of tomcat on a
single box is pretty worthless unless you have serious application
problems.  Tomcat is multi-threaded, and will by nature utilize a
multi-CPU
setup.


If you ask me (and hey, we have thousands of concurrent users and a
> lot more requests) you need a monitoring tool for your application
> inside your application not just vmstat or top. You need to know which
> servlet/action/whatever your presentation layer is takes the time and
> trace it down in the persistence. Everything else is just kindergarten
> :-)
>
>
> >
> >
> > BJ Biernatowski
> > Application Developer, e-Business
>
> Leon
>
> >
> > -----Original Message-----
> > From: Leon Rosenberg [mailto:[EMAIL PROTECTED]
> > Sent: Monday, June 19, 2006 10:49 AM
> > To: Tomcat Users List
> > Subject: Re: Tomcat's scalability
> >
> > are you sure that tomcat is your bottleneck?
> > Your 4 CPU machine (which cpu's btw?) should be able to handle more
> > than 1000 users (unless you are speaking about suns cpu) without
> > problems. Maybe you should provide more info about your application.
> > Do you have any monitoring data?
> >
> > Leon
> >
> > On 6/19/06, Biernatowski Bartosz J <[EMAIL PROTECTED]>
> wrote:
> > > Hello,
> > > I was hoping somebody on the list might point me in the right
> direction...
> > >
> > > I am trying to scale up Tomcat based web application currently
> supporting
> > > ~100 users to 350 users.
> > >
> > > It seems that I have enough hardware: 2 load balanced servers x 4
CPUs
> > each
> > > with 4 GB of RAM which is underutilized for most of the time even
> though
> > > application performance slows dramatically at peak times.
> > >
> > > I was advised to install multiple JVMs in order to improve Tomcat's
> > > performance. Another option I considered was to install 2 instances
> > > of Tomcat on each server to see whether it would handle increased
> load.
> > >
> > > Would anybody know what kind of performance improvement would
multiple
> > > JVM/Tomcat installations provide? Are there any benchmarks
available?
> > >
> > > Thank you for any help!
> > > BJ
> > >
> > > BJ Biernatowski
> > > Application Developer
> > >
> > > This e-mail, including attachments, may include confidential and/or
> > proprietary information, and may be used only by the person or entity
to
> > which it is addressed. If the reader of this e-mail is not the
intended
> > recipient or his or her authorized agent, the reader is hereby
notified
> that
> > any dissemination, distribution or copying of this e-mail, including
its
> > contents and attachments, is prohibited. If you have received this
> e-mail in
> > error, please notify the sender by a "reply to sender only" message
and
> > delete this e-mail immediately and destroy all electronic and hard
> copies of
> > the communication, including attachments.
> > >
> > >
> > >
---------------------------------------------------------------------
> > > To start a new topic, e-mail: users@tomcat.apache.org
> > > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> > This e-mail, including attachments, may include confidential and/or
> proprietary information, and may be used only by the person or entity to
> which it is addressed. If the reader of this e-mail is not the intended
> recipient or his or her authorized agent, the reader is hereby notified
that
> any dissemination, distribution or copying of this e-mail, including its
> contents and attachments, is prohibited. If you have received this
e-mail in
> error, please notify the sender by a "reply to sender only" message and
> delete this e-mail immediately and destroy all electronic and hard
copies of
> the communication, including attachments.
> >
> >
> > ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to