yoavs       2004/04/05 08:37:57

  Modified:    docs/faq connectors.html
               docs/faq/printer connectors.html
               xdocs-faq connectors.xml
  Log:
  Added question to connectors about binary download.
  
  Revision  Changes    Path
  1.10      +282 -265  jakarta-tomcat-site/docs/faq/connectors.html
  
  Index: connectors.html
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-site/docs/faq/connectors.html,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- connectors.html   17 Jan 2004 01:20:09 -0000      1.9
  +++ connectors.html   5 Apr 2004 15:37:57 -0000       1.10
  @@ -1,266 +1,283 @@
  -<html><head><META http-equiv="Content-Type" content="text/html; 
charset=iso-8859-1"><title>Tomcat FAQ - Connectors</title><meta value="Tim Funk" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><style>

  -      dt { font-size : larger;  font-weight : bold }

  -      dd {padding-bottom : 10px;}

  -    </style></head><body vlink="#525D76" alink="#525D76" link="#525D76" 
text="#000000" bgcolor="#ffffff"><table cellspacing="4" width="100%" 
border="0"><!--PAGE HEADER--><tr><td colspan="2"><!--JAKARTA LOGO--><a 
href="http://jakarta.apache.org/";><img border="0" alt="The Jakarta Project" 
align="left" src="http://jakarta.apache.org//images/jakarta-logo.gif";></a><!--PROJECT 
LOGO--><a href="http://jakarta.apache.org/tomcat/";><img border="0" alt="

  -      Tomcat FAQ

  -    " align="right" src="../images/tomcat.gif"></a></td></tr><!--HEADER 
SEPARATOR--><tr><td colspan="2"><hr size="1" noshade=""></td></tr><tr><!--LEFT SIDE 
NAVIGATION--><td nowrap="true" valign="top" 
width="20%"><p><strong>Links</strong></p><ul><li><a href="..">Tomcat 
Home</a></li><li><a href="index.html">FAQ 
Home</a></li></ul><p><strong>Contents</strong></p><ul><li><a 
href="bugs.html">Bugs</a></li><li><a href="classnotfound.html">Class Not 
Found</a></li><li><a href="connectors.html">Connectors</a></li><li><a 
href="database.html">Database</a></li><li><a 
href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Howto";>How do 
I</a></li><li><a href="unix.html">Linux / Unix</a></li><li><a 
href="memory.html">Memory</a></li><li><a href="meta.html">Meta</a></li><li><a 
href="misc.html">Miscellaneous</a></li><li><a href="performance.html">Monitoring / 
Performance</a></li><li><a 
href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>Other 
Resources</a></li><li><a href="security.html">Security</a></li><li><a 
href="version.html">Which Version</a></li><li><a href="tomcatuser.html">Tomcat User 
List</a></li><li><a href="windows.html">Windows</a></li></ul></td><!--RIGHT SIDE MAIN 
BODY--><td align="left" valign="top" width="80%"><table cellspacing="4" width="100%" 
border="0"><tr><td nowrap="true" valign="top" align="left"><h1>Tomcat 
FAQ</h1><h2>Connectors</h2></td><td nowrap="true" valign="top" align="right"><small><a 
href="printer/connectors.html"><img alt="Printer Friendly Version" border="0" 
src="../images/printer.gif"><br>print-friendly<br>version

  -                    </a></small></td></tr></table><table cellpadding="2" 
cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font 
face="arial,helvetica.sanserif" color="#ffffff"><a 
name="Preface"><strong>Preface</strong></a></font></td></tr><tr><td><blockquote>

  -  <p>

  -    Please see the

  -    <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>

  -        Other Resources

  -    </a> Link for other pages describing how they were able to link

  -    Tomcat with a connector. With luck, someone documented their experience

  -    in an environment which is similar to yours.

  -

  -</p>

  -</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Questions"><strong>Questions</strong></a></font></td></tr><tr><td><blockquote>

  -<p>

  -  <ul>

  -    <li>

  -      <a href="#jk">

  -        What is JK (or AJP)?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#vs">

  -        Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#integrate">

  -        Why should  I integrate Apache  with Tomcat? (or not)

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#boot">

  -        At boot, is order of start up (Apache vs Tomcat) important?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#jkloc">

  -     JK2 doesn't seem to be using my settings in my

  -     <code>workers2.properties</code> file

  -     such as creating the shm file or mapping the URIs listed to Tomcat,

  -     what's wrong?

  -      </a>

  -    </li>

  -

  -    <li>

  -      <a href="#generated">

  -      Is there any way to control the content of automatically generated

  -      <code>mod_jk.conf-auto</code>? I need my own specific commands added to it.

  -      </a>

  -    </li>

  -

  -

  -    <li>

  -      <a href="#bind">

  -      How do I bind to a specific ip address?

  -      </a>

  -    </li>

  -

  -  </ul>

  -</p>

  -</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Answers"><strong>Answers</strong></a></font></td></tr><tr><td><blockquote>

  -

  -  <b style="font-size: larger">

  -    <a name="jk">What is JK (or AJP)?</a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    AJP is a wire protocol. It an optimized version of the HTTP protocol to

  -    allow a standalone web server such as Apache talk to Tomcat. Historically,

  -    Apache has always been much faster than Tomcat at serving static content.

  -    The idea is to let Apache serve the static content when possible, then

  -    proxy the request back to Tomcat for Tomcat related content.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="vs">

  -      Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    <ul>

  -      <li>

  -        Stay away from mod_webapp, aka warp. It is deprecated and unsupported

  -        due to lack of developer interest and there are better options such

  -        as jk and jk2. It WILL NOT run on windows.

  -      </li>

  -      <li>

  -        mod_jserv at this point is unsupported and will not be supported

  -        in Tomcat 5. mod_jserv was the original connector which supported

  -        the ajp protocol.

  -      </li>

  -      <li>

  -        <b>mod_jk is great and should be used for production. It is getting

  -        fixes as needed (which is now rare). </b>

  -      </li>

  -      <li>

  -        jk2 is a refactoring of mod_jk and uses the Apache Portable

  -        Runtime (apr). If you are using Apache 2.0,

  -        you'll might want to use jk2. But this may not be production

  -        worthy for everyone. (YMMV) jk2 has quirks which may not be acceptable

  -        to all.

  -      </li>

  -      <li>mod_proxy. A cheap way to proxy without the hassles of configuring JK.

  -        This solution lacks sticky session load balancing. If you don't

  -        need some of the features of jk, jk2 - this is a very simple

  -        alternative.

  -      </li>

  -    </ul>

  -  </div><br>

  -

  -   <b style="font-size: larger">

  -     <a name="integrate">

  -        Why should  I integrate Apache  with Tomcat? (or not)

  -     </a>

  -   </b>

  -   <div style="padding-left : 20px;">

  -    There are many reasons to integrate Tomcat with Apache. And there are

  -    reasons why it

  -    should not be done too. Needless to say, everyone will disagree with

  -    the opinions here.

  -    With the upcoming performance of Tomcat 5, performance reasons

  -    become harder to justify. So here are the issues to discuss in

  -    integrating vs not.

  -   <br><br>

  -

  -  <ul>

  -    <li>

  -      Clustering. By using Apache as a front end you can let Apache act as a

  -      front door to your content to multiple Tomcat instances. If one of your

  -      Tomcats fails, Apache

  -      ignores it and your Sysadmin can sleep through the night. This point

  -      could be ignored if you use a hardware loadbalancer and Tomcat's

  -      clustering capabilities.

  -    </li>

  -    <li>

  -      Clustering/Security. You can also use Apache as a front door to different

  -      Tomcats for

  -      different URL namespaces (/app1/, /app2/, /app3/, or virtual hosts).

  -      The Tomcats can then be each in a protected area

  -      and from a security point of view, you only need to worry about the

  -      Apache server. Essentially, Apache becomes a smart proxy server.

  -    </li>

  -    <li>

  -       Security. This topic can sway one either way. Java has the security

  -       manager while Apache has a larger mindshare and more tricks with

  -       respect to security. I won't go into this

  -       in more detail, but let Google be your friend. Depending on your scenario,

  -       one might be better than the other. But also keep in mind, if you run

  -       Apache with

  -       Tomcat - you have two systems to defend, not one.

  -    </li>

  -    <li>

  -       Add-ons. Adding on CGI, perl, PHP is very natural to Apache. Its

  -       slower and more

  -       of a kludge for Tomcat. Apache also has hundreds of modules that can

  -       be plugged in

  -       at will. Tomcat can have this ability, but the code hasn't been

  -       written yet.

  -    </li>

  -    <li>

  -       Decorators! With Apache in front of Tomcat, you can perform any number

  -       of decorators that

  -       Tomcat doesn't support or doesn't have the immediate code support.

  -       For example,

  -       mod_headers, mod_rewrite, and mod_alias could be written for Tomcat,

  -       but why reinvent the wheel when Apache has done it so well?

  -    </li>

  -    <li>

  -      Speed. Apache is faster at serving static content than Tomcat. But unless

  -      you have a high traffic site, this point is useless. But in some scenarios,

  -      tomcat can be faster than apache. So benchmark YOUR site.

  -    </li>

  -    <li>

  -       Socket handling/system stability. Apache has better socket handling

  -       with respect

  -       to error conditions than Tomcat. The main reason is Tomcat must perform

  -       all its socket handling via the JVM which needs to be cross platform.

  -       The problem

  -       is socket optimization is a platform specific ordeal. Most of the

  -       time the java

  -       code is fine, but when you are also bombarded with dropped connections,

  -       invalid

  -       packets, invalid requests from invalid IP's, Apache does a better job

  -       at dropping these error conditions than JVM based program. (YMMV)

  -    </li>

  -    <li>

  -    <a 
href="http://marc.theaimsgroup.com/?l=tomcat-user&m=104874913017036&w=2";>Here </a>

  -    is a great response from Craig R. McClanahan. If you have free time,

  -    read emails by him in any of the list archives. You'll learn a lot.

  -    </li>

  -    </ul>

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="boot">

  -      At boot, is order of start up (Apache vs Tomcat) important?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    No. This way - either apache or tomcat can be restarted at any time

  -    independent of one another.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="jkloc">

  -     JK2 doesn't seem to be using my settings in my

  -     <code>workers2.properties</code> file

  -     such as creating the shm file or mapping the URIs listed to Tomcat,

  -     what's wrong?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    JK2 is not finding your <code>workers2.properties</code> file.

  -    Specify it's location in your <code>httpd.conf</code> file by adding:

  -

  -    <br><br>

  -    <code>

  -        JkSet config.file /full/system/path/to/workers2.properties

  -    </code>

  -    <br><br>

  -    <a href="http://marc.theaimsgroup.com/?t=105784893200003&r=1&w=2";>

  -        Thread which spawned this question.

  -    </a>

  -  </div><br>

  -

  -

  -  <b style="font-size: larger">

  -    <a name="generated">

  -    Is there any way to control the content of automatically generated

  -    <code>mod_jk.conf-auto</code>? I need my own specific commands added

  -    to it.

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    There really is no need to. Just copy the automatically generated

  -    <code>mod_jk.conf-auto</code> and edit it manually to your preference.

  -    None of production tomcat installations really use <code>mod_jk.conf-auto</code>

  -    as it is.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="bind">

  -    How do I bind to a specific ip address?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    Each Connector element allows an address property. For example:

  -<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td><td height="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../images/void.gif"></td><td 
height="1" bgcolor="#ffffff"><pre>

  -&lt;Connector className="org.apache.coyote.tomcat4.CoyoteConnector"

  -           address="192.168.1.1"

  -           port="8080" minProcessors="5" maxProcessors="75"

  -           enableLookups="true" redirectPort="8443"

  -           acceptCount="100" debug="0" connectionTimeout="20000"

  -           useURIValidationHack="false" disableUploadTimeout="true" /&gt;

  -</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td></tr><tr><td height="1" width="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../images/void.gif"></td><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td></tr></table></div>

  -

  -

  -  </div><br>

  -

  -

  -</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td 
colspan="2"><hr size="1" noshade=""></td></tr><!--PAGE FOOTER--><tr><td 
colspan="2"><div align="center"><font size="-1" color="#525D76"><em>

  -        Copyright &copy; 1999-2003, Apache Software Foundation

  +<html><head><META http-equiv="Content-Type" content="text/html; 
charset=iso-8859-1"><title>Tomcat FAQ - Connectors</title><meta value="Tim Funk" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><meta value="Yoav Shapira" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><style>
  +      dt { font-size : larger;  font-weight : bold }
  +      dd {padding-bottom : 10px;}
  +    </style></head><body vlink="#525D76" alink="#525D76" link="#525D76" 
text="#000000" bgcolor="#ffffff"><table cellspacing="4" width="100%" 
border="0"><!--PAGE HEADER--><tr><td colspan="2"><!--JAKARTA LOGO--><a 
href="http://jakarta.apache.org/";><img border="0" alt="The Jakarta Project" 
align="left" src="http://jakarta.apache.org//images/jakarta-logo.gif";></a><!--PROJECT 
LOGO--><a href="http://jakarta.apache.org/tomcat/";><img border="0" alt="
  +      Tomcat FAQ
  +    " align="right" src="../images/tomcat.gif"></a></td></tr><!--HEADER 
SEPARATOR--><tr><td colspan="2"><hr size="1" noshade=""></td></tr><tr><!--LEFT SIDE 
NAVIGATION--><td nowrap="true" valign="top" 
width="20%"><p><strong>Links</strong></p><ul><li><a href="..">Tomcat 
Home</a></li><li><a href="index.html">FAQ 
Home</a></li></ul><p><strong>Contents</strong></p><ul><li><a 
href="bugs.html">Bugs</a></li><li><a href="classnotfound.html">Class Not 
Found</a></li><li><a href="connectors.html">Connectors</a></li><li><a 
href="database.html">Database</a></li><li><a 
href="deployment.html">Deployment</a></li><li><a 
href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Howto";>How do 
I</a></li><li><a href="unix.html">Linux / Unix</a></li><li><a 
href="memory.html">Memory</a></li><li><a href="meta.html">Meta</a></li><li><a 
href="misc.html">Miscellaneous</a></li><li><a href="performance.html">Monitoring / 
Performance</a></li><li><a 
href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>Other 
Resources</a></li><li><a href="security.html">Security</a></li><li><a 
href="version.html">Which Version</a></li><li><a href="tomcatuser.html">Tomcat User 
List</a></li><li><a href="windows.html">Windows</a></li></ul></td><!--RIGHT SIDE MAIN 
BODY--><td align="left" valign="top" width="80%"><table cellspacing="4" width="100%" 
border="0"><tr><td nowrap="true" valign="top" align="left"><h1>Tomcat 
FAQ</h1><h2>Connectors</h2></td><td nowrap="true" valign="top" align="right"><small><a 
href="printer/connectors.html"><img alt="Printer Friendly Version" border="0" 
src="../images/printer.gif"><br>print-friendly<br>version
  +                    </a></small></td></tr></table><table cellpadding="2" 
cellspacing="0" border="0"><tr><td bgcolor="#525D76"><font 
face="arial,helvetica.sanserif" color="#ffffff"><a 
name="Preface"><strong>Preface</strong></a></font></td></tr><tr><td><blockquote>
  +  <p>
  +    Please see the
  +    <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>
  +        Other Resources
  +    </a> Link for other pages describing how they were able to link
  +    Tomcat with a connector. With luck, someone documented their experience
  +    in an environment which is similar to yours.
  +
  +</p>
  +</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Questions"><strong>Questions</strong></a></font></td></tr><tr><td><blockquote>
  +<p>
  +  <ul>
  +    <li>
  +      <a href="#jk">
  +        What is JK (or AJP)?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#vs">
  +        Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#integrate">
  +        Why should  I integrate Apache  with Tomcat? (or not)
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#boot">
  +        At boot, is order of start up (Apache vs Tomcat) important?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#jkloc">
  +     JK2 doesn't seem to be using my settings in my
  +     <code>workers2.properties</code> file
  +     such as creating the shm file or mapping the URIs listed to Tomcat,
  +     what's wrong?
  +      </a>
  +    </li>
  +
  +    <li>
  +      <a href="#generated">
  +      Is there any way to control the content of automatically generated
  +      <code>mod_jk.conf-auto</code>? I need my own specific commands added to it.
  +      </a>
  +    </li>
  +
  +
  +    <li>
  +      <a href="#bind">
  +      How do I bind to a specific ip address?
  +      </a>
  +    </li>
  +
  +    <li>
  +      <a href="#binary">
  +      Where is the binary distribution of my connector?
  +      </a>
  +    </li>
  +
  +  </ul>
  +</p>
  +</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Answers"><strong>Answers</strong></a></font></td></tr><tr><td><blockquote>
  +
  +  <b style="font-size: larger">
  +    <a name="jk">What is JK (or AJP)?</a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    AJP is a wire protocol. It an optimized version of the HTTP protocol to
  +    allow a standalone web server such as Apache talk to Tomcat. Historically,
  +    Apache has always been much faster than Tomcat at serving static content.
  +    The idea is to let Apache serve the static content when possible, then
  +    proxy the request back to Tomcat for Tomcat related content.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="vs">
  +      Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    <ul>
  +      <li>
  +        Stay away from mod_webapp, aka warp. It is deprecated and unsupported
  +        due to lack of developer interest and there are better options such
  +        as jk and jk2. It WILL NOT run on windows.
  +      </li>
  +      <li>
  +        mod_jserv at this point is unsupported and will not be supported
  +        in Tomcat 5. mod_jserv was the original connector which supported
  +        the ajp protocol.
  +      </li>
  +      <li>
  +        <b>mod_jk is great and should be used for production. It is getting
  +        fixes as needed (which is now rare). </b>
  +      </li>
  +      <li>
  +        jk2 is a refactoring of mod_jk and uses the Apache Portable
  +        Runtime (apr). If you are using Apache 2.0,
  +        you'll might want to use jk2. But this may not be production
  +        worthy for everyone. (YMMV) jk2 has quirks which may not be acceptable
  +        to all.
  +      </li>
  +      <li>mod_proxy. A cheap way to proxy without the hassles of configuring JK.
  +        This solution lacks sticky session load balancing. If you don't
  +        need some of the features of jk, jk2 - this is a very simple
  +        alternative.
  +      </li>
  +    </ul>
  +  </div><br>
  +
  +   <b style="font-size: larger">
  +     <a name="integrate">
  +        Why should  I integrate Apache  with Tomcat? (or not)
  +     </a>
  +   </b>
  +   <div style="padding-left : 20px;">
  +    There are many reasons to integrate Tomcat with Apache. And there are
  +    reasons why it
  +    should not be done too. Needless to say, everyone will disagree with
  +    the opinions here.
  +    With the upcoming performance of Tomcat 5, performance reasons
  +    become harder to justify. So here are the issues to discuss in
  +    integrating vs not.
  +   <br><br>
  +
  +  <ul>
  +    <li>
  +      Clustering. By using Apache as a front end you can let Apache act as a
  +      front door to your content to multiple Tomcat instances. If one of your
  +      Tomcats fails, Apache
  +      ignores it and your Sysadmin can sleep through the night. This point
  +      could be ignored if you use a hardware loadbalancer and Tomcat's
  +      clustering capabilities.
  +    </li>
  +    <li>
  +      Clustering/Security. You can also use Apache as a front door to different
  +      Tomcats for
  +      different URL namespaces (/app1/, /app2/, /app3/, or virtual hosts).
  +      The Tomcats can then be each in a protected area
  +      and from a security point of view, you only need to worry about the
  +      Apache server. Essentially, Apache becomes a smart proxy server.
  +    </li>
  +    <li>
  +       Security. This topic can sway one either way. Java has the security
  +       manager while Apache has a larger mindshare and more tricks with
  +       respect to security. I won't go into this
  +       in more detail, but let Google be your friend. Depending on your scenario,
  +       one might be better than the other. But also keep in mind, if you run
  +       Apache with
  +       Tomcat - you have two systems to defend, not one.
  +    </li>
  +    <li>
  +       Add-ons. Adding on CGI, perl, PHP is very natural to Apache. Its
  +       slower and more
  +       of a kludge for Tomcat. Apache also has hundreds of modules that can
  +       be plugged in
  +       at will. Tomcat can have this ability, but the code hasn't been
  +       written yet.
  +    </li>
  +    <li>
  +       Decorators! With Apache in front of Tomcat, you can perform any number
  +       of decorators that
  +       Tomcat doesn't support or doesn't have the immediate code support.
  +       For example,
  +       mod_headers, mod_rewrite, and mod_alias could be written for Tomcat,
  +       but why reinvent the wheel when Apache has done it so well?
  +    </li>
  +    <li>
  +      Speed. Apache is faster at serving static content than Tomcat. But unless
  +      you have a high traffic site, this point is useless. But in some scenarios,
  +      tomcat can be faster than apache. So benchmark YOUR site.
  +    </li>
  +    <li>
  +       Socket handling/system stability. Apache has better socket handling
  +       with respect
  +       to error conditions than Tomcat. The main reason is Tomcat must perform
  +       all its socket handling via the JVM which needs to be cross platform.
  +       The problem
  +       is socket optimization is a platform specific ordeal. Most of the
  +       time the java
  +       code is fine, but when you are also bombarded with dropped connections,
  +       invalid
  +       packets, invalid requests from invalid IP's, Apache does a better job
  +       at dropping these error conditions than JVM based program. (YMMV)
  +    </li>
  +    <li>
  +    <a 
href="http://marc.theaimsgroup.com/?l=tomcat-user&m=104874913017036&w=2";>Here </a>
  +    is a great response from Craig R. McClanahan. If you have free time,
  +    read emails by him in any of the list archives. You'll learn a lot.
  +    </li>
  +    </ul>
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="boot">
  +      At boot, is order of start up (Apache vs Tomcat) important?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    No. This way - either apache or tomcat can be restarted at any time
  +    independent of one another.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="jkloc">
  +     JK2 doesn't seem to be using my settings in my
  +     <code>workers2.properties</code> file
  +     such as creating the shm file or mapping the URIs listed to Tomcat,
  +     what's wrong?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    JK2 is not finding your <code>workers2.properties</code> file.
  +    Specify it's location in your <code>httpd.conf</code> file by adding:
  +
  +    <br><br>
  +    <code>
  +        JkSet config.file /full/system/path/to/workers2.properties
  +    </code>
  +    <br><br>
  +    <a href="http://marc.theaimsgroup.com/?t=105784893200003&r=1&w=2";>
  +        Thread which spawned this question.
  +    </a>
  +  </div><br>
  +
  +
  +  <b style="font-size: larger">
  +    <a name="generated">
  +    Is there any way to control the content of automatically generated
  +    <code>mod_jk.conf-auto</code>? I need my own specific commands added
  +    to it.
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    There really is no need to. Just copy the automatically generated
  +    <code>mod_jk.conf-auto</code> and edit it manually to your preference.
  +    None of production tomcat installations really use <code>mod_jk.conf-auto</code>
  +    as it is.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="bind">
  +    How do I bind to a specific ip address?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    Each Connector element allows an address property. For example:
  +<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td><td height="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../images/void.gif"></td><td 
height="1" bgcolor="#ffffff"><pre>
  +&lt;Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
  +           address="192.168.1.1"
  +           port="8080" minProcessors="5" maxProcessors="75"
  +           enableLookups="true" redirectPort="8443"
  +           acceptCount="100" debug="0" connectionTimeout="20000"
  +           useURIValidationHack="false" disableUploadTimeout="true" /&gt;
  +</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td></tr><tr><td height="1" width="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../images/void.gif"></td><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../images/void.gif"></td></tr></table></div>
  +
  +
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="binary">
  +    Where can I download a binary distribution of my connector?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    You can't: you need to download the source and compile it
  +    for your platform.  The source distributions are available
  +    from the <a href="http://jakarta.apache.org/site/sourceindex.cgi";>standard 
location.</a>
  +  </div><br>
  +
  +
  +</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td 
colspan="2"><hr size="1" noshade=""></td></tr><!--PAGE FOOTER--><tr><td 
colspan="2"><div align="center"><font size="-1" color="#525D76"><em>
  +        Copyright &copy; 1999-2003, Apache Software Foundation
           </em></font></div></td></tr></table></body></html>
  
  
  
  1.9       +281 -264  jakarta-tomcat-site/docs/faq/printer/connectors.html
  
  Index: connectors.html
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-site/docs/faq/printer/connectors.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- connectors.html   17 Jan 2004 01:20:09 -0000      1.8
  +++ connectors.html   5 Apr 2004 15:37:57 -0000       1.9
  @@ -1,265 +1,282 @@
  -<html><head><META http-equiv="Content-Type" content="text/html; 
charset=iso-8859-1"><title>Tomcat FAQ - Connectors</title><meta value="Tim Funk" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><style>

  -      dt { font-size : larger;  font-weight : bold }

  -      dd {padding-bottom : 10px;}

  -    </style></head><body vlink="#525D76" alink="#525D76" link="#525D76" 
text="#000000" bgcolor="#ffffff"><table cellspacing="4" width="100%" 
border="0"><!--PAGE HEADER--><tr><td colspan="2"><!--JAKARTA LOGO--><a 
href="http://jakarta.apache.org/";><img border="0" alt="The Jakarta Project" 
align="left" src="http://jakarta.apache.org//images/jakarta-logo.gif";></a><!--PROJECT 
LOGO--><a href="http://jakarta.apache.org/tomcat/";><img border="0" alt="

  -      Tomcat FAQ

  -    " align="right" src="../../images/tomcat.gif"></a></td></tr><!--HEADER 
SEPARATOR--><tr><td colspan="2"><hr size="1" noshade=""></td></tr><tr><!--RIGHT SIDE 
MAIN BODY--><td align="left" valign="top" width="80%"><table cellspacing="4" 
width="100%" border="0"><tr><td nowrap="true" valign="top" align="left"><h1>Tomcat 
FAQ</h1><h2>Connectors</h2></td><td nowrap="true" valign="top" align="right"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Preface"><strong>Preface</strong></a></font></td></tr><tr><td><blockquote>

  -  <p>

  -    Please see the

  -    <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>

  -        Other Resources

  -    </a> Link for other pages describing how they were able to link

  -    Tomcat with a connector. With luck, someone documented their experience

  -    in an environment which is similar to yours.

  -

  -</p>

  -</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Questions"><strong>Questions</strong></a></font></td></tr><tr><td><blockquote>

  -<p>

  -  <ul>

  -    <li>

  -      <a href="#jk">

  -        What is JK (or AJP)?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#vs">

  -        Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#integrate">

  -        Why should  I integrate Apache  with Tomcat? (or not)

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#boot">

  -        At boot, is order of start up (Apache vs Tomcat) important?

  -      </a>

  -    </li>

  -    <li>

  -      <a href="#jkloc">

  -     JK2 doesn't seem to be using my settings in my

  -     <code>workers2.properties</code> file

  -     such as creating the shm file or mapping the URIs listed to Tomcat,

  -     what's wrong?

  -      </a>

  -    </li>

  -

  -    <li>

  -      <a href="#generated">

  -      Is there any way to control the content of automatically generated

  -      <code>mod_jk.conf-auto</code>? I need my own specific commands added to it.

  -      </a>

  -    </li>

  -

  -

  -    <li>

  -      <a href="#bind">

  -      How do I bind to a specific ip address?

  -      </a>

  -    </li>

  -

  -  </ul>

  -</p>

  -</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Answers"><strong>Answers</strong></a></font></td></tr><tr><td><blockquote>

  -

  -  <b style="font-size: larger">

  -    <a name="jk">What is JK (or AJP)?</a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    AJP is a wire protocol. It an optimized version of the HTTP protocol to

  -    allow a standalone web server such as Apache talk to Tomcat. Historically,

  -    Apache has always been much faster than Tomcat at serving static content.

  -    The idea is to let Apache serve the static content when possible, then

  -    proxy the request back to Tomcat for Tomcat related content.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="vs">

  -      Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    <ul>

  -      <li>

  -        Stay away from mod_webapp, aka warp. It is deprecated and unsupported

  -        due to lack of developer interest and there are better options such

  -        as jk and jk2. It WILL NOT run on windows.

  -      </li>

  -      <li>

  -        mod_jserv at this point is unsupported and will not be supported

  -        in Tomcat 5. mod_jserv was the original connector which supported

  -        the ajp protocol.

  -      </li>

  -      <li>

  -        <b>mod_jk is great and should be used for production. It is getting

  -        fixes as needed (which is now rare). </b>

  -      </li>

  -      <li>

  -        jk2 is a refactoring of mod_jk and uses the Apache Portable

  -        Runtime (apr). If you are using Apache 2.0,

  -        you'll might want to use jk2. But this may not be production

  -        worthy for everyone. (YMMV) jk2 has quirks which may not be acceptable

  -        to all.

  -      </li>

  -      <li>mod_proxy. A cheap way to proxy without the hassles of configuring JK.

  -        This solution lacks sticky session load balancing. If you don't

  -        need some of the features of jk, jk2 - this is a very simple

  -        alternative.

  -      </li>

  -    </ul>

  -  </div><br>

  -

  -   <b style="font-size: larger">

  -     <a name="integrate">

  -        Why should  I integrate Apache  with Tomcat? (or not)

  -     </a>

  -   </b>

  -   <div style="padding-left : 20px;">

  -    There are many reasons to integrate Tomcat with Apache. And there are

  -    reasons why it

  -    should not be done too. Needless to say, everyone will disagree with

  -    the opinions here.

  -    With the upcoming performance of Tomcat 5, performance reasons

  -    become harder to justify. So here are the issues to discuss in

  -    integrating vs not.

  -   <br><br>

  -

  -  <ul>

  -    <li>

  -      Clustering. By using Apache as a front end you can let Apache act as a

  -      front door to your content to multiple Tomcat instances. If one of your

  -      Tomcats fails, Apache

  -      ignores it and your Sysadmin can sleep through the night. This point

  -      could be ignored if you use a hardware loadbalancer and Tomcat's

  -      clustering capabilities.

  -    </li>

  -    <li>

  -      Clustering/Security. You can also use Apache as a front door to different

  -      Tomcats for

  -      different URL namespaces (/app1/, /app2/, /app3/, or virtual hosts).

  -      The Tomcats can then be each in a protected area

  -      and from a security point of view, you only need to worry about the

  -      Apache server. Essentially, Apache becomes a smart proxy server.

  -    </li>

  -    <li>

  -       Security. This topic can sway one either way. Java has the security

  -       manager while Apache has a larger mindshare and more tricks with

  -       respect to security. I won't go into this

  -       in more detail, but let Google be your friend. Depending on your scenario,

  -       one might be better than the other. But also keep in mind, if you run

  -       Apache with

  -       Tomcat - you have two systems to defend, not one.

  -    </li>

  -    <li>

  -       Add-ons. Adding on CGI, perl, PHP is very natural to Apache. Its

  -       slower and more

  -       of a kludge for Tomcat. Apache also has hundreds of modules that can

  -       be plugged in

  -       at will. Tomcat can have this ability, but the code hasn't been

  -       written yet.

  -    </li>

  -    <li>

  -       Decorators! With Apache in front of Tomcat, you can perform any number

  -       of decorators that

  -       Tomcat doesn't support or doesn't have the immediate code support.

  -       For example,

  -       mod_headers, mod_rewrite, and mod_alias could be written for Tomcat,

  -       but why reinvent the wheel when Apache has done it so well?

  -    </li>

  -    <li>

  -      Speed. Apache is faster at serving static content than Tomcat. But unless

  -      you have a high traffic site, this point is useless. But in some scenarios,

  -      tomcat can be faster than apache. So benchmark YOUR site.

  -    </li>

  -    <li>

  -       Socket handling/system stability. Apache has better socket handling

  -       with respect

  -       to error conditions than Tomcat. The main reason is Tomcat must perform

  -       all its socket handling via the JVM which needs to be cross platform.

  -       The problem

  -       is socket optimization is a platform specific ordeal. Most of the

  -       time the java

  -       code is fine, but when you are also bombarded with dropped connections,

  -       invalid

  -       packets, invalid requests from invalid IP's, Apache does a better job

  -       at dropping these error conditions than JVM based program. (YMMV)

  -    </li>

  -    <li>

  -    <a 
href="http://marc.theaimsgroup.com/?l=tomcat-user&m=104874913017036&w=2";>Here </a>

  -    is a great response from Craig R. McClanahan. If you have free time,

  -    read emails by him in any of the list archives. You'll learn a lot.

  -    </li>

  -    </ul>

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="boot">

  -      At boot, is order of start up (Apache vs Tomcat) important?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    No. This way - either apache or tomcat can be restarted at any time

  -    independent of one another.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="jkloc">

  -     JK2 doesn't seem to be using my settings in my

  -     <code>workers2.properties</code> file

  -     such as creating the shm file or mapping the URIs listed to Tomcat,

  -     what's wrong?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    JK2 is not finding your <code>workers2.properties</code> file.

  -    Specify it's location in your <code>httpd.conf</code> file by adding:

  -

  -    <br><br>

  -    <code>

  -        JkSet config.file /full/system/path/to/workers2.properties

  -    </code>

  -    <br><br>

  -    <a href="http://marc.theaimsgroup.com/?t=105784893200003&r=1&w=2";>

  -        Thread which spawned this question.

  -    </a>

  -  </div><br>

  -

  -

  -  <b style="font-size: larger">

  -    <a name="generated">

  -    Is there any way to control the content of automatically generated

  -    <code>mod_jk.conf-auto</code>? I need my own specific commands added

  -    to it.

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    There really is no need to. Just copy the automatically generated

  -    <code>mod_jk.conf-auto</code> and edit it manually to your preference.

  -    None of production tomcat installations really use <code>mod_jk.conf-auto</code>

  -    as it is.

  -  </div><br>

  -

  -  <b style="font-size: larger">

  -    <a name="bind">

  -    How do I bind to a specific ip address?

  -    </a>

  -  </b>

  -  <div style="padding-left : 20px;">

  -    Each Connector element allows an address property. For example:

  -<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td><td height="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" bgcolor="#ffffff"><pre>

  -&lt;Connector className="org.apache.coyote.tomcat4.CoyoteConnector"

  -           address="192.168.1.1"

  -           port="8080" minProcessors="5" maxProcessors="75"

  -           enableLookups="true" redirectPort="8443"

  -           acceptCount="100" debug="0" connectionTimeout="20000"

  -           useURIValidationHack="false" disableUploadTimeout="true" /&gt;

  -</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td></tr><tr><td height="1" 
width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../../images/void.gif"></td><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td></tr></table></div>

  -

  -

  -  </div><br>

  -

  -

  -</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td 
colspan="2"><hr size="1" noshade=""></td></tr><!--PAGE FOOTER--><tr><td 
colspan="2"><div align="center"><font size="-1" color="#525D76"><em>

  -        Copyright &copy; 1999-2003, Apache Software Foundation

  +<html><head><META http-equiv="Content-Type" content="text/html; 
charset=iso-8859-1"><title>Tomcat FAQ - Connectors</title><meta value="Tim Funk" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><meta value="Yoav Shapira" 
name="author"><meta value="[EMAIL PROTECTED]" name="email"><style>
  +      dt { font-size : larger;  font-weight : bold }
  +      dd {padding-bottom : 10px;}
  +    </style></head><body vlink="#525D76" alink="#525D76" link="#525D76" 
text="#000000" bgcolor="#ffffff"><table cellspacing="4" width="100%" 
border="0"><!--PAGE HEADER--><tr><td colspan="2"><!--JAKARTA LOGO--><a 
href="http://jakarta.apache.org/";><img border="0" alt="The Jakarta Project" 
align="left" src="http://jakarta.apache.org//images/jakarta-logo.gif";></a><!--PROJECT 
LOGO--><a href="http://jakarta.apache.org/tomcat/";><img border="0" alt="
  +      Tomcat FAQ
  +    " align="right" src="../../images/tomcat.gif"></a></td></tr><!--HEADER 
SEPARATOR--><tr><td colspan="2"><hr size="1" noshade=""></td></tr><tr><!--RIGHT SIDE 
MAIN BODY--><td align="left" valign="top" width="80%"><table cellspacing="4" 
width="100%" border="0"><tr><td nowrap="true" valign="top" align="left"><h1>Tomcat 
FAQ</h1><h2>Connectors</h2></td><td nowrap="true" valign="top" align="right"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Preface"><strong>Preface</strong></a></font></td></tr><tr><td><blockquote>
  +  <p>
  +    Please see the
  +    <a href="http://nagoya.apache.org/wiki/apachewiki.cgi?Tomcat/Links";>
  +        Other Resources
  +    </a> Link for other pages describing how they were able to link
  +    Tomcat with a connector. With luck, someone documented their experience
  +    in an environment which is similar to yours.
  +
  +</p>
  +</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Questions"><strong>Questions</strong></a></font></td></tr><tr><td><blockquote>
  +<p>
  +  <ul>
  +    <li>
  +      <a href="#jk">
  +        What is JK (or AJP)?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#vs">
  +        Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#integrate">
  +        Why should  I integrate Apache  with Tomcat? (or not)
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#boot">
  +        At boot, is order of start up (Apache vs Tomcat) important?
  +      </a>
  +    </li>
  +    <li>
  +      <a href="#jkloc">
  +     JK2 doesn't seem to be using my settings in my
  +     <code>workers2.properties</code> file
  +     such as creating the shm file or mapping the URIs listed to Tomcat,
  +     what's wrong?
  +      </a>
  +    </li>
  +
  +    <li>
  +      <a href="#generated">
  +      Is there any way to control the content of automatically generated
  +      <code>mod_jk.conf-auto</code>? I need my own specific commands added to it.
  +      </a>
  +    </li>
  +
  +
  +    <li>
  +      <a href="#bind">
  +      How do I bind to a specific ip address?
  +      </a>
  +    </li>
  +
  +    <li>
  +      <a href="#binary">
  +      Where is the binary distribution of my connector?
  +      </a>
  +    </li>
  +
  +  </ul>
  +</p>
  +</blockquote></td></tr></table><table cellpadding="2" cellspacing="0" 
border="0"><tr><td bgcolor="#525D76"><font face="arial,helvetica.sanserif" 
color="#ffffff"><a 
name="Answers"><strong>Answers</strong></a></font></td></tr><tr><td><blockquote>
  +
  +  <b style="font-size: larger">
  +    <a name="jk">What is JK (or AJP)?</a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    AJP is a wire protocol. It an optimized version of the HTTP protocol to
  +    allow a standalone web server such as Apache talk to Tomcat. Historically,
  +    Apache has always been much faster than Tomcat at serving static content.
  +    The idea is to let Apache serve the static content when possible, then
  +    proxy the request back to Tomcat for Tomcat related content.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="vs">
  +      Which connector: mod_jserv, JK, JK2, mod_webapp or mod_proxy?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    <ul>
  +      <li>
  +        Stay away from mod_webapp, aka warp. It is deprecated and unsupported
  +        due to lack of developer interest and there are better options such
  +        as jk and jk2. It WILL NOT run on windows.
  +      </li>
  +      <li>
  +        mod_jserv at this point is unsupported and will not be supported
  +        in Tomcat 5. mod_jserv was the original connector which supported
  +        the ajp protocol.
  +      </li>
  +      <li>
  +        <b>mod_jk is great and should be used for production. It is getting
  +        fixes as needed (which is now rare). </b>
  +      </li>
  +      <li>
  +        jk2 is a refactoring of mod_jk and uses the Apache Portable
  +        Runtime (apr). If you are using Apache 2.0,
  +        you'll might want to use jk2. But this may not be production
  +        worthy for everyone. (YMMV) jk2 has quirks which may not be acceptable
  +        to all.
  +      </li>
  +      <li>mod_proxy. A cheap way to proxy without the hassles of configuring JK.
  +        This solution lacks sticky session load balancing. If you don't
  +        need some of the features of jk, jk2 - this is a very simple
  +        alternative.
  +      </li>
  +    </ul>
  +  </div><br>
  +
  +   <b style="font-size: larger">
  +     <a name="integrate">
  +        Why should  I integrate Apache  with Tomcat? (or not)
  +     </a>
  +   </b>
  +   <div style="padding-left : 20px;">
  +    There are many reasons to integrate Tomcat with Apache. And there are
  +    reasons why it
  +    should not be done too. Needless to say, everyone will disagree with
  +    the opinions here.
  +    With the upcoming performance of Tomcat 5, performance reasons
  +    become harder to justify. So here are the issues to discuss in
  +    integrating vs not.
  +   <br><br>
  +
  +  <ul>
  +    <li>
  +      Clustering. By using Apache as a front end you can let Apache act as a
  +      front door to your content to multiple Tomcat instances. If one of your
  +      Tomcats fails, Apache
  +      ignores it and your Sysadmin can sleep through the night. This point
  +      could be ignored if you use a hardware loadbalancer and Tomcat's
  +      clustering capabilities.
  +    </li>
  +    <li>
  +      Clustering/Security. You can also use Apache as a front door to different
  +      Tomcats for
  +      different URL namespaces (/app1/, /app2/, /app3/, or virtual hosts).
  +      The Tomcats can then be each in a protected area
  +      and from a security point of view, you only need to worry about the
  +      Apache server. Essentially, Apache becomes a smart proxy server.
  +    </li>
  +    <li>
  +       Security. This topic can sway one either way. Java has the security
  +       manager while Apache has a larger mindshare and more tricks with
  +       respect to security. I won't go into this
  +       in more detail, but let Google be your friend. Depending on your scenario,
  +       one might be better than the other. But also keep in mind, if you run
  +       Apache with
  +       Tomcat - you have two systems to defend, not one.
  +    </li>
  +    <li>
  +       Add-ons. Adding on CGI, perl, PHP is very natural to Apache. Its
  +       slower and more
  +       of a kludge for Tomcat. Apache also has hundreds of modules that can
  +       be plugged in
  +       at will. Tomcat can have this ability, but the code hasn't been
  +       written yet.
  +    </li>
  +    <li>
  +       Decorators! With Apache in front of Tomcat, you can perform any number
  +       of decorators that
  +       Tomcat doesn't support or doesn't have the immediate code support.
  +       For example,
  +       mod_headers, mod_rewrite, and mod_alias could be written for Tomcat,
  +       but why reinvent the wheel when Apache has done it so well?
  +    </li>
  +    <li>
  +      Speed. Apache is faster at serving static content than Tomcat. But unless
  +      you have a high traffic site, this point is useless. But in some scenarios,
  +      tomcat can be faster than apache. So benchmark YOUR site.
  +    </li>
  +    <li>
  +       Socket handling/system stability. Apache has better socket handling
  +       with respect
  +       to error conditions than Tomcat. The main reason is Tomcat must perform
  +       all its socket handling via the JVM which needs to be cross platform.
  +       The problem
  +       is socket optimization is a platform specific ordeal. Most of the
  +       time the java
  +       code is fine, but when you are also bombarded with dropped connections,
  +       invalid
  +       packets, invalid requests from invalid IP's, Apache does a better job
  +       at dropping these error conditions than JVM based program. (YMMV)
  +    </li>
  +    <li>
  +    <a 
href="http://marc.theaimsgroup.com/?l=tomcat-user&m=104874913017036&w=2";>Here </a>
  +    is a great response from Craig R. McClanahan. If you have free time,
  +    read emails by him in any of the list archives. You'll learn a lot.
  +    </li>
  +    </ul>
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="boot">
  +      At boot, is order of start up (Apache vs Tomcat) important?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    No. This way - either apache or tomcat can be restarted at any time
  +    independent of one another.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="jkloc">
  +     JK2 doesn't seem to be using my settings in my
  +     <code>workers2.properties</code> file
  +     such as creating the shm file or mapping the URIs listed to Tomcat,
  +     what's wrong?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    JK2 is not finding your <code>workers2.properties</code> file.
  +    Specify it's location in your <code>httpd.conf</code> file by adding:
  +
  +    <br><br>
  +    <code>
  +        JkSet config.file /full/system/path/to/workers2.properties
  +    </code>
  +    <br><br>
  +    <a href="http://marc.theaimsgroup.com/?t=105784893200003&r=1&w=2";>
  +        Thread which spawned this question.
  +    </a>
  +  </div><br>
  +
  +
  +  <b style="font-size: larger">
  +    <a name="generated">
  +    Is there any way to control the content of automatically generated
  +    <code>mod_jk.conf-auto</code>? I need my own specific commands added
  +    to it.
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    There really is no need to. Just copy the automatically generated
  +    <code>mod_jk.conf-auto</code> and edit it manually to your preference.
  +    None of production tomcat installations really use <code>mod_jk.conf-auto</code>
  +    as it is.
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="bind">
  +    How do I bind to a specific ip address?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    Each Connector element allows an address property. For example:
  +<div align="left"><table border="0" cellpadding="0" cellspacing="4"><tr><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td><td height="1" 
bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td></tr><tr><td width="1" bgcolor="#023264"><img 
border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" bgcolor="#ffffff"><pre>
  +&lt;Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
  +           address="192.168.1.1"
  +           port="8080" minProcessors="5" maxProcessors="75"
  +           enableLookups="true" redirectPort="8443"
  +           acceptCount="100" debug="0" connectionTimeout="20000"
  +           useURIValidationHack="false" disableUploadTimeout="true" /&gt;
  +</pre></td><td width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td></tr><tr><td height="1" 
width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" height="1" width="1" 
src="../../images/void.gif"></td><td height="1" bgcolor="#023264"><img border="0" 
hspace="0" vspace="0" height="1" width="1" src="../../images/void.gif"></td><td 
height="1" width="1" bgcolor="#023264"><img border="0" hspace="0" vspace="0" 
height="1" width="1" src="../../images/void.gif"></td></tr></table></div>
  +
  +
  +  </div><br>
  +
  +  <b style="font-size: larger">
  +    <a name="binary">
  +    Where can I download a binary distribution of my connector?
  +    </a>
  +  </b>
  +  <div style="padding-left : 20px;">
  +    You can't: you need to download the source and compile it
  +    for your platform.  The source distributions are available
  +    from the <a href="http://jakarta.apache.org/site/sourceindex.cgi";>standard 
location.</a>
  +  </div><br>
  +
  +
  +</blockquote></td></tr></table></td></tr><!--FOOTER SEPARATOR--><tr><td 
colspan="2"><hr size="1" noshade=""></td></tr><!--PAGE FOOTER--><tr><td 
colspan="2"><div align="center"><font size="-1" color="#525D76"><em>
  +        Copyright &copy; 1999-2003, Apache Software Foundation
           </em></font></div></td></tr></table></body></html>
  
  
  
  1.8       +18 -0     jakarta-tomcat-site/xdocs-faq/connectors.xml
  
  Index: connectors.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-site/xdocs-faq/connectors.xml,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- connectors.xml    17 Jan 2004 01:20:09 -0000      1.7
  +++ connectors.xml    5 Apr 2004 15:37:57 -0000       1.8
  @@ -8,6 +8,7 @@
   
     <properties>
       <author email="[EMAIL PROTECTED]">Tim Funk</author>
  +    <author email="[EMAIL PROTECTED]">Yoav Shapira</author>
       <title>Connectors</title>
     </properties>
   
  @@ -73,6 +74,12 @@
         </a>
       </li>
   
  +    <li>
  +      <a href="#binary">
  +      Where is the binary distribution of my connector?
  +      </a>
  +    </li>
  +
     </ul>
   </p>
   </section>
  @@ -274,6 +281,17 @@
   </source>
   
   
  +  </answer>
  +
  +  <question>
  +    <a name="binary">
  +    Where can I download a binary distribution of my connector?
  +    </a>
  +  </question>
  +  <answer>
  +    You can't: you need to download the source and compile it
  +    for your platform.  The source distributions are available
  +    from the <a href="http://jakarta.apache.org/site/sourceindex.cgi";>standard 
location.</a>
     </answer>
   
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to