In-process Tomcat is to have Tomcat running in the same process space as
Apache HTTPD, IIS, or other web server.  Since most of the web servers
are implemented in C/C++, you will have to use JNI to integrate with
Java-based Tomcat, and create a "mod_tomcat" like module for Httpd. 

Definitely the in-process setup improves performance, since
communication between Tomcat and web server occurs via memory-based data
exchange.  It will be less stable since if something went wrong with the
Tomcat, it would affect the web server directly.  It will also be less
scalable, since this setup won't support high-availability and
clustering of Tomcat servers.

Out-process Tomcat, on the other hand, is running as an independent
server in a different process space or on a different machine as the
HTTPD server.  It may lack the performance as the in-process set up,
since the communication between Tomcat and HTTPD occurs via network.
But it is definitely more stable and more scalable than in-process
Tomcat. 

I don't think that in-process Tomcat is much used nowadays, since it is
hard to configure and very error-prone.  The common way of using Tomcat
with a front end HTTPD is the out-process one, since it is more flexibly
and easy to configure.  The common architecture is to have the front-end
HTTPD running in a DMZ, serving static pages, while one or more Tomcat
servers hosting the dynamic application running behind the firewall.  In
this case, the out-process Tomcat is the only option.

Hope this helps. 

ND

-----Original Message-----
From: lightbulb432 [mailto:[EMAIL PROTECTED] 
Sent: Sunday, June 24, 2007 1:33 PM
To: users@tomcat.apache.org
Subject: In-Process Tomcat


I read a few things that explained the difference (in configurations
where
you must front Tomcat with Apache HTTPD) between in-process Tomcat and
out-of-process Tomcat, and have a couple of questions.

It said that in-process Tomcat will reduce latency (which I understand)
but
decrease both stability and scalability - why will it decrease both of
these
things?

How can you set up an in-process Tomcat? I couldn't find anything
related at
http://tomcat.apache.org/connectors-doc/ or by doing a web search. Do
both
options make use of the mod_jk connector to HTTPD, and it's just a
matter of
configuring it appropriately, or does Tomcat somehow have to be compiled
into Apache, or something else?


In general, what conflicts arise from an integrated Tomcat and HTTPD
setup,
whether in-process or not? Both Tomcat and HTTPD have configuration
related
to URL rewriting, authorization/authentication, logging, etc. In general
terms, what's the most reasonable way to configure your integrated setup
so
that the resulting installation doesn't leave security holes, or break
due
to URL rewriting, or any other results? An strategies or best practices
here?
-- 
View this message in context:
http://www.nabble.com/In-Process-Tomcat-tf3972772.html#a11276703
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
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