tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Amy Roh <amy...@apache.org>
Subject Re: [VOTE] Apache Tomcat 5.0 Proposal
Date Mon, 15 Jul 2002 18:19:55 GMT
Sorry for the late vote.  I've been on vacation for last two weeks.

But for the record, you have my +1.

Thanks,
Amy

Remy Maucherat wrote:

> After trying to address the concerns raised by the proposal draft, I
> would like to call for a vote on it, now that the discussions have died
> down.
>
> <ballot>
> [ ] +1 I support the proposal, and will help implement it
> [ ] +0 I support the proposal
> [ ] -0 I do not support the proposal
> [ ] -1 I am against the proposal being implemented, because:
>
> </ballot>
>
> The vote will run for one full week until July 9th. Users and other
> contributors may vote, but only committers have binding votes.
>
> Remy
>
>   ------------------------------------------------------------------------
>
>                     Proposal for Apache Tomcat 5.0
>                     ==============================
>
> Introduction:
> ------------
>
> This document is a proposal for the next major release of Apache Tomcat,
> Apache Tomcat 5.0.
>
> Apache Tomcat 5.0 will improve on the Apache Tomcat 3.3 and Apache
> Tomcat 4.1 architectures, by making them simpler, more flexible and more
> modular, while at the same time adding support for the new Servlet API 2.4 and
> JSP 2.0 specifications, currently under development by the Java Community
> Process.
>
> The major goals for Apache Tomcat 5.0 are to:
> - improve scalability, reliability and performance over previous versions
> - have simpler/cleaner code, so more people can get involved
> - merge of the various ideas in 3.x and 4.x
> - get the community togheter
> - provide maximum modularity and compliance to the standards
> - make it easy to continue to maintain the existing codebases
>
> Testing will occur to make sure the stated robustness and performance goals
> are met by Tomcat 5.0.
>
> This proposal also tries to take advantage of the lessons learned while
> optimizing and maintaining Tomcat.
>
> Note: The development of Apache Tomcat 4.1.x will continue in parallel to the
> implementation of this proposal.
>
> General architecture:
> --------------------
>
> An improved version of Coyote 1.0, called Coyote 2.0, will be used as
> the Apache Tomcat 5.0 core.
>
> Coyote is currently considered a connector for Tomcat 3.3 and 4.x, and is under
> development in the jakarta-tomcat-connectors repository.
>
> Coyote 1.0 includes:
> - Protocol handlers for AJP 1.3, HTTP/1.1 and JNI
> - Adapter for Tomcat 3.3
> - Adapter for Tomcat 4.x
>
> Extensibility capabilities will be added to Coyote, as well as JMX management
> features, and if possible, addional protocol handlers (like WARP 1.0).
>
> The Servlet API 2.4 specification will be implemented in a new version of
> Catalina, called Catalina 2.0. A new version of the Coyote adapter will be
> written for it if mandated by API changes. Components which duplicate
> functionality provided by Coyote will be removed, including the old connectors.
>
> On the JSP side, Jasper 2 will be updated to support JSP 2.0, will be renamed
> to Jasper 3, and is the proposed Jasper codebase. It provides many
> improvements over Jasper 1 included in Tomcat 3.x and Tomcat 4.0.x, including
> good tag library handling, and near zero overhead when compared to
> an equivalent hand coded servlet. Jasper 2 will also undergo additional
> optimizations.
>
> Apache Tomcat 5.0 will be made by default of the following components:
> - Coyote 2.0 - core
> - Catalina 2.0 - Servlet API 2.4 implementation
> - Jasper 2 - JSP 2.0 implementation
>
> Many other configurations are also possible, and it is expected that advanced
> users take advantage of it to make Tomcat better suit their needs. It is also
> possible that new special purpose components, like a bare bones Servlet API
> implementation, be developed to address the embedded market.
>
> Due to the scope of this work, this initial Proposal only plans
> the implementation and support of the default configuration described above.
>
> Changes over Apache Tomcat 4.1.x:
> --------------------------------
>
> A lot of the Apache Tomcat 5.0 code will be based on the Apache Tomcat 4.1.x
> codebase. Tomcat 5.0 will also be able to use the Tomcat 3.3.x code.
>
> The following major changes and additions are proposed to the current Apche
> Tomcat code, and related dependencies:
>
> A) Removal of the org.apache.catalina.connector.*
>
> This package is currently deprecated in Tomcat 4.1 because of
> its implementation inefficiencies, and general bad design. It is thus proposed
> that it is removed in Tomcat 5.0.
>
> B) Addition of new loader code for the commons-daemon subproject
>
> It is proposed that, in an attempt to solve the problems with using startup
> scripts, as well as adding additional features oriented towards reliability
> (including the capability to restart Tomcat automatically should the JVM
> crashes or experience memory management related problems), the launcher code
> which will be developed as part of commons-daemon be adopted.
> This code will be based in part on the launcher code used for the Sun Web
> Services Pack, and in part on the Wrapper project code (available at SF.net),
> if we manage to come to an agreement with the Wrapper developers.
>
> C) Extensions to Coyote
>
> It is proposed that Coyote 2.0 include the following changes over Coyote 1.0:
> - The current hook mechanism used in Coyote 1.0 will be extended to be
> more generic and powerful.
> - It is also envisioned that JMX management capabilities could be added
> to Coyote.
> - Deprecated interfaces will be removed (two interfaces, at the moment).
> - An additional protocol handler for the WARP 1.0 protocol will be added
> provided there is user interest and developers willing to dedicate time.
>
> D) Implementation of the Servlet 2.4 Specification
>
> Catalina 2.0 is proposed to be identical to Catalina 1.1 (included
> in Tomcat 4.1.x), with the exception of adding support for the new Servlet
> Specification. The changes introduced in this new revision are relatively
> limited, and shouldn't cause any major architectural changes in Catalina.
> Catalina 2.0 will also inherit from all the refactorings done in Catalina 1.1.
>
> Servlet 2.4 Specification Draft:
> http://jcp.org/aboutJava/communityprocess/review/jsr154/index.html
>
> E) Implementation of the JSP 2.0 Specification
>
> Jasper 2 will be modified to support the new JSP Specification. More important
> changes will be required than for supporting the new Servlet Specification.
>
> JSP 2.0 Specification Draft:
> http://jcp.org/aboutJava/communityprocess/review/jsr152/index.html
>
> Resources needed:
> ----------------
>
> * New jakarta-servletapi-5 repository
>
> This new repository will hold the default implementation of the Servlet
> API 2.4 and the JSP 2.0 specifications. Alternately, the new API can be put
> in the 'jakarta-servletapi' repository after a branch is created to hold the
> current version of the code.
>
> * New jakarta-tomcat-5.0 repository
>
> This repository will contain the version of Catalina which will be updated to
> support the Servlet API 2.4. Alternately, this code can be put in the
> 'jakarta-tomcat-4.0' or 'jakarta-tomcat' repository after a branch is created
> to hold the old code present.
>
> * New branch in jakarta-tomcat-jasper
>
> The implementation of JSP 2.0 will occur in the HEAD branch of the
> jakarta-tomcat-jasper repository. A branch will be created to contain
> the Jasper 2 code which is used in Tomcat 4.1.x.
>
> Release managers (proposed):
> ---------------------------
>
> It is proposed that the release management duties be split for this release,
> due to the amount of modules which will be part of Tomcat 5.0.
>
> Larry Isaacs
> Remy Maucherat
>
>   ------------------------------------------------------------------------
> --
> To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


--
To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


Mime
View raw message