Hi,
Does anyone can help me know what exactly impact the "connection_pool_size"
parameter in mod_jk configuration file?
If I've posted to the wrong mailing list, please let me know the right one.
Thanks for help,
David
-Message d'origine-
De : Ramblewski David
Envoyé : mercredi 31 mars 2010 10:29
À : 'users@tomcat.apache.org'
Objet : connection_pool_size informations
Hi,
I'm actually working on a production platform to make some benchmarks and there
is an important latency mainly because of sockets renewal.
The platform is set up with 4 front servers hosting 1 apache process and 24
middle servers hosting 4 tomcat instances.
Thus there is 4 apaches and 96 tomcat workers in the mod_jk worker
configuration file.
The previous apache non working configuration was:
StartServers5
MaxClients 8192
ServerLimit 137
MinSpareThreads 25
MaxSpareThreads 60
ThreadsPerChild 60
MaxRequestsPerChild 1000
I found an apache MPM worker configuration which has successfully passed the
benchmarks:
StartServers16
MaxClients 8192
ServerLimit 34
MinSpareThreads 25
MaxSpareThreads 150
ThreadsPerChild 256
MaxRequestsPerChild 0
Reading the tomcat worker documentation, I saw that the connection_pool_size
parameter is equal to ThreadsPerChild by default.
This defines the number of connections made to the AJP backend that are
maintained as a connection pool. It will limit the number of those connection
that each web server child process can made.
So I first conclude that:
1 Apache Child process = 1 mod_jk connection pool shared between N threads
and connection_pool_size = N where N is the value of ThreadsPerChild apache
parameter
Thus in the example above we could have maximum 34 mod_jk connection pools (1
per Apache child) and connection_pool_size = 256 -> 8704 connections
But I found the configuration site below:
http://lbconfig.appspot.com/?lb=mod_jk&v=1.2.27%20or%20less&nca=4&ncj=4&nai=4&nji=24&njips=4&f=true&c=false&lr=false&lrl=&mpm=Worker
which explain us that there is a connection_pool_size for each worker.
Thus 1 Apache Child process can handle X threads and indirectly Y workers so
there is Y mod_jk connection pools per apache child and connection_pool_size =
X.
Thus in the example above we could have maximum 34 (ServerLimit) * 96 (tomcat
workers) mod_jk connection pools and connection_pool_size = 256 -> 835584
connections
Does anyone can elucidate that question?
Apache ThreadPerChild parameter should be superior or equal to the number of
mod_jk tomcat workers?
Thanks for help,
David Ramblewski
Ce message et les pièces jointes sont confidentiels et réservés à l'usage
exclusif de ses destinataires. Il peut également être protégé par le secret
professionnel. Si vous recevez ce message par erreur, merci d'en avertir
immédiatement l'expéditeur et de le détruire. L'intégrité du message ne pouvant
être assurée sur Internet, la responsabilité du groupe Atos Origin ne pourra
être recherchée quant au contenu de ce message. Bien que les meilleurs efforts
soient faits pour maintenir cette transmission exempte de tout virus,
l'expéditeur ne donne aucune garantie à cet égard et sa responsabilité ne
saurait être recherchée pour tout dommage résultant d'un virus transmis.
This e-mail and the documents attached are confidential and intended solely for
the addressee; it may also be privileged. If you receive this e-mail in error,
please notify the sender immediately and destroy it. As its integrity cannot be
secured on the Internet, the Atos Origin group liability cannot be triggered
for the message content. Although the sender endeavours to maintain a computer
virus-free network, the sender does not warrant that this transmission is
virus-free and will not be liable for any damages resulting from any virus
transmitted.
-
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org