Another update. Same disclaimers as before.
--------------------------------------------------------
FAQ's (just an idea, these don't have to be included)
Q: Is mod_webapp replacing mod_jk?
A: No. See below for links to documentation, then choose the one that
best suits your needs.
Q: Is Coyote replacing mod_jk?
A: Coyote isn't the same sort of thing as mod_jk, see below in the
"Coyote" section for more details.
Q: It's all very confusing.
A: Yes. A good strategy is to read through the summaries below and
follow some of the documentation links. If you still have
questions, try searching the tomcat-user mailing list archives,
someone has probably answered the question already, there may even
be a HOWTO already prepared. If that doesn't help, then you might
consider posting your question to tomcat-users.
non-jakarta howto's:
these were culled from recent posts to tomcat-users. i have no way to
judge if they are any good. it would be nice to only include the ones
that someone can vouch for, but that may be too much work. the list
is evolving...
http://www.acg-gmbh.de/mod_jk/
Apache 2.0/Tomcat 4/mod_jk/Win32
http://www.pubbitch.org/jboss/
Apache 2.0/Tomcat 4/mod_jk2/JBoss
Apache 2.0/Tomcat 4/mod_webapp/JBoss
http://bruno.vernay.free.fr/HowTo/bWebServerHowTo/index.html
Apache ?.?/Tomcat 4/mod_webapp/Win32
"references" link has list of other HOWTO's
mod_jserv
although it's probably still in production use at some sites,
mod_jserv generally shouldn't be considered for new installations.
why it was written:
it was there first.
where to get the source:
jakarta-tomcat repository
src/native/mod_jserv/
where to get documentation:
http://jakarta.apache.org/tomcat/tomcat-3.3-doc/tomcat-apache-howto.html
[ed] In tomcat-3.3-doc/index.html, it looks like mod_jserv is the
suggested connector, and mod_jk is optional or alternative or
something. It's my understanding that this is incorrect, and mod_jk
should be used for new installations. It's a little confusing.
unerlying protocol:
AJP11 - original protocol
Ajp12 - also supported in mod_jk1.
works with:
servlet containers:
JServ
Tomcat3.x as well ( which supports ajp12 )
web servers:
All apache1.3 versions
operating systems:
???
mod_jk
why it was written:
originally, clean-up of mod_jserv. Refactoring of mod_jserv to
better abstract the server and protocol.
features:
many production users. load balancing with both tomcat 3 and
tomcat 4 <[EMAIL PROTECTED]> "Pretty good OO model, good
abstraction for server and protocol, etc."
future:
mod_jk2, as of [30 Apr 2002] still in pre-alpha.
status:
in production for tomcat 3, 4. see also webapp connector.
where to get the source:
jakarta-tomcat-connectors/jk
where to get documentation:
jakarta-tomcat-connectors/jk
tomcat-dev mailing list archives
http://jakarta.apache.org/tomcat/tomcat-3.3-doc/mod_jk-howto.html
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/jk.html
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/jk2.html
works with:
servlet containers:
jserv?
tomcat-3
tomcat-4
web servers:
domino
apache 1.3
apache 2.0 (HEAD)
netscape
AOLServer ( not in the main tree ).
IIS
platforms:
many.
underlying protocol:
AJP, see mod_jserv
evolution:
AJP12, binary
AJP13, better SSL support. the current protocol.
AJP14, there is no AJP14, it's a shelved experiment. AJP13 is
flexible enough for future growth, and there's the
possibility of eventually moving to an industry-standard
marshalling protocol like XDR or CDR. see comments below.
documentation/mailing-list/cvs comments of interest:
Re: [NITPICK] didn't see this one coming...
Mon, 29 Apr 2002 07:54:09 -0700 (PDT)
<[EMAIL PROTECTED]>
... Note that mod_jk2 is not and will not be ready
for 4.1 ...
<[EMAIL PROTECTED]> "Also - it's [mod_jk -ed] the area/component of
tomcat with the largest number of individual commiters ( by my
count at least ). And more important - one of the things that 3.x
and 4.x share and seem to bring cooperation from both sides."
"Mod_jk v/s mod_webapp" on tomcat-dev:
Bill Barker wrote: "mod_jk2 is the next generation of mod_jk. It
is currently barely Alpha quality for Apache 2.x (and still
subject to major changes from day-to-day)"
costin: "Mod_jk works on all web servers and with all tomcat
versions. Mod_jk2 will do the same."
<[EMAIL PROTECTED]> : "it started with ajp11 and ajp12 ( first
text based, second binary ). Ajp12 evolved into ajp13 - using
same encoding but with some extensions ( to deal with persistent
connections ).
"GOMEZ Henri" <[EMAIL PROTECTED]> : using jk instead of warp depend
on webserver you want to have it. If need today, or tomorrow
IIS/NES/DOMINO, use mod_jk, if you only need to use Apache
1.3/2.0 and have APR ready, you can use also mod_warp.
costin: "jk had many developers contributing to it, more than any
other tomcat component ( AFAIK ). It's also a matter of evolution
- mod_jk started by implementing the ajp12 protocol and being
backward compatible with mod_jserv ( actually a lot of code has
been refactored from it ). You can still use mod_jserv with 3.x,
and you can use mod_jk with anything from jserv to tomcat4."
webapp
you might see the terms "mod_webapp", "webapp" and "WARP", being
used in a confusingly similiar way, but properly: mod_webapp - the
apache module portion of webapp, WARP - the underlying protocol
features:
tight webserver/container integration means simple deployments
are very easy, work being done on making things even easier.
why it was written:
uses APR, tight tomcat 4 intergration
status:
under active development.
where to get the source:
jakarta-tomcat-connectors/webapp
where to find documentation:
jakarta-tomcat-connectors/webapp
http://nagoya.apache.org/~pier/
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/webapp.html
works with:
tomcat versions:
tomcat-4 only
web servers:
apache 1.3
apache 2.0 <[EMAIL PROTECTED]> "with the "prefork" MPM. We
have some experimental code in the repository to add ... Apache
2.0 with the other MPMs."
operating systems:
OS/X (confirmed by pier)
Solaris 8 both X86 and SPARC (confirmed by pier)
should work on all other Unix-like O/S's
experimental code in repository to support Apache 1.3 under
Windows
underlying protocol:
WARP
mailing list/documentation comments:
mod_jk vs mod_webapp thread: pier : "Motivation? I don't like
mod_jk, I wanted to use APR as a portable runtime for an Apache 1.3
module, I believe that the WARP protocol with built-in support for
auto-deployment and web-application configuration is the way to go
(rather than using mod_rewrite rules all the way around),"
Re: jakarta-tomcat-connectors documentation/summaries pier: "There
were some other motivations when it all started... Mod_JK was
unmaintained, and nobody knew how to make it work. I didn't like
its design and took out the experiences I had while working on
mod_jserv and all those nifty ideas, and put them together (note:
the WARP protocol is a derivate of AJPv21 which was supposed to be
used on JServ.NEXT)"
coyote
coyote isn't properly a webserver connector like the others listed
here. see cvs comments below. it's:
coyote - the architecture for the java code that talks to
connectors. similiar to code in tomcat 3.3, but adapters are
available for both tomcat 3 and tomcat 4.
coyote http - an implementation of an HTTP standalone connector.
coyote jk - interface to mod_jk (see above)
why it was written:
costin: "Lots of optimizations ( especially in 4.0 ), better
abstractions, etc."
status:
being phased in as default for tomcat 4.1
costin: "Will also be the main connector for 3.x ( at least for
jk2, but also http/1.1 )"
where to get the source:
jakarta-tomcat-connectors/coyote
org/apache/coyote/http11 - standalone http 1.1 connector
where to get documentation:
user docs:
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/jk2.html
http://jakarta.apache.org/tomcat/tomcat-4.1-doc/config/coyote.html
developer docs:
cvs comments, mailing list
works with:
servlet containers:
tomcat-3
tomcat-4
web servers:
see mod_jk
operating systems
pure Java for HTTP standalone
same as mod_jk for jk configuration
underlying protocol:
HTTP, as standalone connector for tomcat 3/4
AJP13, when used with mod_jk.
JNI, (ref remm comment below)
mailing list/documentation/cvs comments:
Re: [VOTE] Release Plan for Apache Tomcat 4.1 Wed, 24 Apr 2002
13:29:22 -0700 (PDT) <[EMAIL PROTECTED]> coyote-Jk2 is stable as
a Ajp13/Socket connector - i.e. all that matter for mod_jk1. The
Unix socket and all advanced features of jk2/java will not be
'release quality' either ( but with a bit of luck and some help
from Nacho and maybe others we can have them working and
beta-level).
costin: "Coyote is the architecture for the java side - it supports
HTTP/1.1 ( as standalone ) and all servers that jk1 supports."
coyote announcement? from cvs: Thu Jun 14 01:07:52 2001 UTC (10
months, 1 week ago) by remm "Coyote is a proposal for a "new"
connector API for Tomcat. It actually isn't that new, because it is
derived from some of the components which are at the core of Tomcat
3.3. Those components were significantly simplified."
From: "Remy Maucherat" <[EMAIL PROTECTED]>
Subject: Re: Coyote/jk2 - interaction explanations please
Date: Thu, 18 Apr 2002 04:45:37 -0700
In Coyote, there's:
- the container adapters (for 3.3, 4.0, 4.0-HEAD)
- the external API (request, response, and a couple other things)
JK 2 and HTTP/1.1 are protocol hand
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>