Hi,
Our application is a online vehicle rental.We are Apache2.2 as a front end
server & Tomcat 6.0.18 as back-end server with mod_jk2.28 tomcat connector.
The followings are our system configurations,
1)Operating System - Windows server2008
2)Processor - Intel Xenon
3)RAM -4 GB
I've been doing the load testing our application for couple of months.From
this,I observed our application is not supporting for more than 20
concurrent users.If I put a load for 20 users after a period of time some
pages are not loading.Only i'm seeing the empty window.
I'm not getting anything in tomcat log.
In apache mod_jk.log I'm getting the following error....
[Tue Apr 06 18:12:08 2010][1624:3032] [info] jk_ajp_common.c (1788): Writing
to client aborted or client network problems
[Tue Apr 06 18:12:08 2010][1624:3032] [info] jk_ajp_common.c (2447):
(worker1) sending request to tomcat failed (unrecoverable), because of
client write error (attempt=1)
[Tue Apr 06 18:12:08 2010]worker1 empower.mybiz24by7.com 4.547560
[Tue Apr 06 18:12:08 2010][1624:3032] [info] mod_jk.c (2608): Aborting
connection for worker=worker1
I'm also giving the latest configuration files that i have....
Tomcat Configuration files:
server.xml:
<Server port="8006" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.AprLifecycleListener"
SSLEngine="on" />
<Listener className="org.apache.catalina.core.JasperListener" />
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"
/>
<Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="8009" protocol="AJP/1.3" debug="0"
enableLookups="false"
emptySessionPath="true" redirectPort="8443" maxThreads="512"
minSpareThreads="50" maxSpareThreads="150" backlog="50"
connectionTimeout="60000" />
<Engine name="Catalina" defaultHost="****************">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="empower.mybiz24by7.com" appBase="gateway"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Listener className =
"org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Host>
<Host name="account.mybiz24by7.com" appBase="mybizadmin"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Listener className =
"org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Host>
<Host name="support.mybiz24by7.com" appBase="mybizsupport"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Listener className =
"org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Host>
<Host name="crm.mybiz24by7.com" appBase="mybizcrm"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Listener className =
"org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Host>
<Host name="www.renta4wheeler.com" appBase="renta4wheeler"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Listener className =
"org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Host>
<Listener className = "org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Engine>
</Service>
<Listener className = "org.apache.jk.config.ApacheConfig"
workersConfig="C:/Apache/conf/workers.properties"
modJk="C:/Apache/modules/mod_jk.so" jkLog="logs/mod_jk.log" jkDebug="info"
noRoot="false"/>
</Server>
I'm not very good with this configuring tomcat server.xml.so i'll great
full to receive nice suggestion from you.
context.xml:
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Resource name="jdbc/vehrentDB" auth="Container"
type="javax.sql.DataSource"
maxActive="50"
maxIdle="30"
minIdle="10"
username="******" password="******"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://***********:1433;
databaseName=*****;user=******;password=*******;"
numTestsPerEvictionRun="15"
timeBetweenEvictionRunsMillis="900000"
minEvictableIdleTimeMillis="900000"
testWhileIdle="true"
testOnBorrow="false"
removeAbandoned="true"
removeAbandonedTimeout="300"
logAbandoned="true"
/>
<Resource name="jdbc/empowerDB" auth="Container"
type="javax.sql.DataSource"
maxActive="50"
maxIdle="30"
minIdle="10"
username="******" password="*****"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://*******:1433;databaseName=*****;user=*****;password=*******;"
numTestsPerEvictionRun="15"
timeBetweenEvictionRunsMillis="900000"
minEvictableIdleTimeMillis="900000"
testWhileIdle="true"
testOnBorrow="false"
removeAbandoned="true"
removeAbandonedTimeout="300"
logAbandoned="true"
/>
</Context>
Here I'm using the second database empowerDB especially for login purpose
only & rest of the processes are accessing VehrentDB(first one).
Apache2.2 Configuration files:
httpd.conf:
ServerRoot "C:/Apache"
Listen *:80
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule jk_module "C:/Apache/modules/mod_jk.so"
JkLogFile C:/Apache/conf/from_apache_mod_jk.log
JkLogLevel emerg
JkWorkersFile C:/Apache/conf/workers.properties
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkRequestLogFormat "%w %V %T"
JkMount /empower ajp13
JkMount /vehrent ajp13
JkMount /empower/* ajp13
JkMount /vehrent/* ajp13
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon
Group daemon
</IfModule>
</IfModule>
ServerAdmin [email protected]
ServerName ************:80
DocumentRoot "C:/Apache/htdocs"
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "C:/Apache/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
ErrorLog "logs/error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
\"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "C:/Apache/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "C:/Apache/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
DefaultType text/plain
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
Include conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-ssl.conf
workers.properties:
workers.tomcat_home=C:/Tomcat
workers.java_home=C:/java/jdk1.6.0_16
ps=/
worker.list=worker1
worker.list=worker2
worker.list=supportWorker
worker.list=crmWorker
worker.list=renta4wheelerWorker
worker.worker1.list=ajp13
worker.worker1.ajp13.port=8009
worker.worker1.ajp13.host=empower.mybiz24by7.com
worker.worker1.ajp13.type=ajp13
worker.worker1.ajp13.ping_timeout=1000
worker.worker1.ajp13.connection_pool_timeout=60
worker.worker1.ajp13.connection_pool_size=90
worker.worker1.ajp13.recovery_options=0
worker.worker1.ajp13.connect_timeout=10000
worker.worker1.ajp13.prepost_timeout=10000
worker.worker1.ajp13.reply_timeout=40000
worker.worker1.ajp13.retries=20
worker.worker1.ajp13.socket_timeout=10
worker.worker1.ajp13.lbfactor=5
worker.worker2.list=ajp13
worker.worker2.ajp13.port=8009
worker.worker2.ajp13.host=account.mybiz24by7.com
worker.worker2.ajp13.type=ajp13
worker.worker2.ajp13.lbfactor=1
worker.supportWorker.list=ajp13
worker.supportWorker.ajp13.port=8009
worker.supportWorker.ajp13.host=support.mybiz24by7.com
worker.supportWorker.ajp13.type=ajp13
worker.supportWorker.ajp13.lbfactor=1
worker.crmWorker.list=ajp13
worker.crmWorker.ajp13.port=8009
worker.crmWorker.ajp13.host=crm.mybiz24by7.com
worker.crmWorker.ajp13.type=ajp13
worker.crmWorker.ajp13.lbfactor=1
worker.renta4wheelerWorker.list=ajp13
worker.renta4wheelerWorker.ajp13.port=8009
worker.renta4wheelerWorker.ajp13.host=www.renta4wheeler.com
worker.renta4wheelerWorker.ajp13.type=ajp13
worker.renta4wheelerWorker.ajp13.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.sticky_session=1
worker.loadbalancer.balance_workers= worker1
worker.inprocess.type=jni
httpd-vhosts.conf :
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/corp"
ServerName XXXXXXX.com
ServerAlias www.XXXXXXX.com
ErrorLog "logs/corp-error.log"
CustomLog "logs/corp-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/imababa"
ServerName XXXXXXX.com
ServerAlias www.XXXXXXX.com
ErrorLog "logs/imababa-error.log"
CustomLog "logs/imababa-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/ImababaDreams"
ServerName XXXXXXX.com
ServerAlias www.XXXXXXX.com
ErrorLog "logs/imababa-error.log"
CustomLog "logs/imababa-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/vehrent"
ServerName XXXXXXX.com
ServerAlias www.XXXXXXX.com
ErrorLog "logs/vehrent.log"
CustomLog "logs/vehrent.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/gateway"
ServerName empower.XXXXXXX.com
ServerAlias empower.XXXXXXX.com
ErrorLog "logs/gateway-error.log"
CustomLog "logs/gateway-access.log" common
JkMount /* worker1
JkUnMount /*js/*.js worker1
JkUnMount /*.jpeg worker1
JkUnMount /*.png worker1
JkUnMount /*.gif worker1
JkUnMount /*.html worker1
JkUnMount /*.jpg worker1
JkUnMount /*.css worker1
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/account"
ServerName account.XXXXXXX.com
ServerAlias account.XXXXXXX.com
ErrorLog "logs/account-error.log"
CustomLog "logs/account-access.log" common
JkMount /* worker2
JkUnMount /*js/*.js worker2
JkUnMount /*.jpeg worker2
JkUnMount /*.png worker2
JkUnMount /*.gif worker2
JkUnMount /*.html worker2
JkUnMount /*.jpg worker2
JkUnMount /*.css worker2
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/support"
ServerName support.XXXXXXX.com
ServerAlias support.XXXXXXX.com
ErrorLog "logs/support-error.log"
CustomLog "logs/support-access.log" common
JkMount /* supportWorker
JkUnMount /*js/*.js supportWorker
JkUnMount /*.jpeg supportWorker
JkUnMount /*.png supportWorker
JkUnMount /*.gif supportWorker
JkUnMount /*.html supportWorker
JkUnMount /*.jpg supportWorker
JkUnMount /*.css supportWorker
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/crm"
ServerName crm.XXXXXXX.com
ServerAlias crm.XXXXXXX.com
ErrorLog "logs/crm.log"
CustomLog "logs/crm.log" common
JkMount /* crmWorker
JkUnMount /*js/*.js crmWorker
JkUnMount /*.jpeg crmWorker
JkUnMount /*.png crmWorker
JkUnMount /*.gif crmWorker
JkUnMount /*.html crmWorker
JkUnMount /*.jpg crmWorker
JkUnMount /*.css crmWorker
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Apache/htdocs/renta4wheeler"
ServerName www.XXXXXXX.com
ServerAlias www.XXXXXXX.com
ErrorLog "logs/renta4wheeler.log"
CustomLog "logs/renta4wheeler.log" common
JkMount /* renta4wheelerWorker
JkUnMount /*js/*.js renta4wheelerWorker
JkUnMount /*.jpeg renta4wheelerWorker
JkUnMount /*.png renta4wheelerWorker
JkUnMount /*.gif renta4wheelerWorker
JkUnMount /*.html renta4wheelerWorker
JkUnMount /*.jpg renta4wheelerWorker
JkUnMount /*.css renta4wheelerWorker
</VirtualHost>
httpd-ssl.conf :
Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:C:/Apache/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
SSLMutex default
<VirtualHost _default_:443>
DocumentRoot "C:/Apache/htdocs/gateway"
ServerName empower.XXXXXX.com
ServerAdmin [email protected]
ErrorLog "C:/Apache/logs/sss-error.log"
SSLEngine on
SSLCipherSuite
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile C:/Apache/conf/empower.XXXXXXXX.com.crt
SSLCertificateKeyFile C:/Apache/conf/empower.XXXXXX.com.key
JkMount /* worker1
JkMount /*dwr/* worker1
JkUnMount /*js/*.js worker1
JkUnMount /*.jpeg worker1
JkUnMount /*.png worker1
JkUnMount /*.gif worker1
JkUnMount /*.html worker1
JkUnMount /*.jpg worker1
JkUnMount /*.css worker1
JkUnMount /*.swf worker1
SSLCertificateChainFile "C:/Apache/conf/empower.XXXXX.com.crt"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:/Apache/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "C:/Apache/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
These are the files i'm using in Apache & Tomcat servers for the
configuration.I'm giving the JVM parameter's as follows,
1)Initial Memory Pool -2560
2)Maximum memory pool-2560
3)Thread size -I don't know what to set exactly.
I'm very eagerly waiting for your reply to proceed further.
Thanks in advance.
Christopher Schultz-2 wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Munirathinavel,
>
> One post is sufficient: we all got a copy.
>
> On 2/13/2010 8:48 AM, Munirathinavel wrote:
>> I'm using Tomcat 6.0.18 & apache2.2 server & I need to know configure my
>> server.xml & context.xml for high performance & heavy traffic.
>
> It's always best to have the most up-to-date version of your software.
> Tomcat 6.0.24 is available: you might want to consider using that in
> your testing environment from here on out.
>
> How do you connect Apache httpd to Tomcat? What purpose does httpd serve?
>
>> <GlobalNamingResources>
>> <Resource name="UserDatabase" auth="Container"
>> type="org.apache.catalina.UserDatabase"
>> description="User database that can be updated and saved"
>>
>> factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
>> pathname="conf/tomcat-users.xml" />
>> </GlobalNamingResources>
>
> Do you need this UserDatabase in here? I wouldn't use that in production.
>
>> <Service name="Catalina">
>> <Connector port="8009" debug="0" enableLookups="false"
>> protocol="AJP/1.3"
>> maxThreads="120" minSpareThreads="30" maxSpareThreads="60"
>> reloadable="false" connectionTimeout="20000"
>> redirectPort="8443"/>
>
> Here's where things get interesting:
>
> Does 120 simultaneous connections sound like a reasonable load for your
> webapp? What kinds of loads do you /want/ to be able to handle?
>
> If you need to be able to handle huge amounts of traffic, you might want
> to consider removing Apache httpd from your setup. You haven't said what
> you use it for: some people use it work static content hosting, which
> isn't a good enough reason. Others use it for load balancing, which you
> haven't mentioned so I assume you aren't. Some folks, like me, use it to
> direct traffic to more than one instance of Tomcat when a hardware
> load-balancer isn't available. If you aren't doing any of these things,
> then get rid of httpd: it's just slowing things down.
>
> If you have a lot of keepalive requests, consider using the NIO
> connector which doesn't tie up request processing threads while waiting
> for the 3nd, 3rd, etc. request on the same connection. If you need to
> send large static files, definitely consider using the APR connector
> with sendFile="true". If you need SSL, also consider using the APR
> connector, as the OpenSSL-based SSL implementation is faster than the
> one you get with the Java provider.
>
> Finally, the use of an <Executor> is usually recommended because those
> thread pools can dynamically size themselves. The standard <Connector>
> thread pools, for whatever reason, will only create new threads... they
> won't take them out of service. An <Executor> can keep the thread pool
> lean and mean.
>
>
>> <Engine name="Catalina" defaultHost="***********">
>>
>> <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
>> resourceName="UserDatabase"/>
>
> Yikes!
>
>> <Host name="***********" appBase="gateway"
>> unpackWARs="true" autoDeploy="true"
>> xmlValidation="false" xmlNamespaceAware="false">
>>
>> <Listener className =
>> "org.apache.jk.config.ApacheConfig"
>> workersConfig="conf/workers.properties"
>> mod_Jk="D:/Apache2.2/modules/mod_jk.so" jkLog="logs/mod_jk.log"
>> jkDebug="info" noRoot="false"/>
>> </Host>
>>
>> <Listener className = "org.apache.jk.config.ApacheConfig"
>> workersConfig="conf/workers.properties"
>> mod_Jk="D:/Apache2.2/modules/mod_jk.so" jkLog="logs/mod_jk.log"
>> jkDebug="info" noRoot="false"/>
>> </Engine>
>> </Service>
>> <Listener className = "org.apache.jk.config.ApacheConfig"
>> workersConfig="conf/workers.properties"
>> mod_Jk="D:/Apache2.2/modules/mod_jk.so" jkLog="logs/mod_jk.log"
>> jkDebug="info" noRoot="false"/>
>
> You probably don't want to use the ApacheConfig listener: just write
> your own mod_jk configuration files. You certainly don't need /three/ of
> them.
>
>> <Resource name="jdbc/vehrentDB" auth="Container"
>> type="javax.sql.DataSource"
>> maxActive="100"
>
> Only you can decide what settings are best for your webapp. Here are
> some things to think about:
>
> 1. You have 120 max threads, meaning a maximum of 120 simultaneous
> connections to handle. Your database connection pool is configured for
> 100 connections. What percentage of your requests do /not/ require
> database access? If the answer is lower than about 20%, then you
> probably want to make your maxThreads and maxActive closer to each
> other. Otherwise, request threads will block waiting for database
> connections.
>
> There are good reasons to limit your database connection pool size: if
> your database is not particularly high-performance, then you might want
> users to wait. It's just something to think about.
>
>> <Resource name="jdbc/empowerDB" auth="Container"
>> type="javax.sql.DataSource"
>> maxActive="100"
>
> If you have 2 databases, I might think about the ratio of connections
> used for each database: if the usage is roughly 50/50, maybe you want
> only 60 connections in each database connection pool. Reducing from 100
> to 60 connections to your database might eliminate some overhead that's
> not needed.
>
> Then again, if your pool size is set that high and the ratio really is
> 50/50, then you'll end up with an effective pool size of 60 connections,
> anyway, since the pool won't create connections it doesn't need.
>
> You haven't said a word about your application, so it would be helpful
> to know what it's supposed to do, in general.
>
> You also haven't mentioned anything about current load versus ideal or
> target load. Nothing about memory requirements, numbers of concurrent
> sessions you'd like to support, or average sizes of sessions.
>
> If you provide some of that information, we may be able to give you
> further tips. Everything above is just kind of generic.
>
> In general, Tomcat is quite fast in it's default configuration. I would
> take a wild-ass guess that, for any non-trivial web application, Tomcat
> configuration can only account for somewhere around 10% of performance
> advantages... and that's mostly with the <Connector> configuration under
> heavy loads. It's most likely that, when there is a performance problem,
> that your web application is going to be the "problem".
>
> Good luck,
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAkt2wF4ACgkQ9CaO5/Lv0PBcrACffFQQwcHtim/diSfALNcvUcQc
> ba8An23H17/eD00962524sjKcqdzJTw/
> =emWJ
> -----END PGP SIGNATURE-----
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>
>
--
View this message in context:
http://old.nabble.com/How-to-configure-tomcat-server.xml....-tp27575197p28164684.html
Sent from the Tomcat - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]