Jump to content
The Inquirer-Home

Jetty Experimental version released

110k standalone HTTP 1.1 server
Friday, 23 January 2004, 18:30
FOR YOUR AMUSEMENT, about two weeks ago the Mortbay folks announced the release of a standalone HTTP/1.1 server they're calling JettyExperimental.

If you're not already aware of the Jetty server you should be. Jetty is more performant and reliable than Tomcat. It's smaller, more lightweight and easier to embed. It's designed to be a production-quality alternative to Tomcat, which is the Reference Implementation (RI) of the servlet specification.

This experimental new release carves off years of kruft and kicks open the doors for people to get involved with the future of Jetty. Following is the release notice from Greg Wilkins:

alt='scissors'

This is the experimental release of Jetty. Currently it is focus on providing a small, lightweight and complete HTTP/1.1 protocol stack.

This is mostly a clean slate implementation with only a little code taken from Jetty 5, so that 8 years of cruft can be removed.

It is also trying to be IO nuetral so that NIO buffering and non-blocking approaches can be used.

It currently implements most of HTTP/1.1 in a jar of approx 110k, with no other jars required.

Very little doco at the moment, but the things you need to know are:

+ it is built with maven maven jar:jar
+ eclipse project files are checked in.
+ You can run it with java -classpath target/jetty-EXP0.jar org.mortbay.http.HttpServer
+ The HttpServer is nailed to port 8080 and just does a simple dump.
+ Most of RFC2616 is covered and the server handles HTTP 0.9, 1.0 and 1.1 requests in persistent and non-persistent forms.
+ Test harnesses are currently covering about 70% of the code.

You should pay attention to this release if

+ You really need a small lightweight fully featured HTTP server and you are a little brave.
+ You want to collaborate on the future of Jetty but find too much code in the existing code base.

To do

+ Lots more javadoc
+ NIO implementation of Buffers.
+ Optional of DirectBuffers for constants and memory buffers.
+ Buffer bypass handling so that large writes can be written directly
+ Proper threadpool or equiv
+ Move more behaviour from blocking HttpConnection to HttpInput and HttpOutput
+ Nonblocking implementations of HttpInput, HttpOutput and HttpConnection.
+ A Connector architecture (same as Jetty)
+ A Handler architecture (probably nested as with tomcat)
+ A resource handler
+ Contentlets
+ Benchmarking
+ Those servlet thingies.

alt='scissors'

L'INQ
Jetty homepage

Share this:

Comments

There are no comments submitted yet. Do you have an interesting opinion? Then be the first to post a comment.

Advertisement
Subscribe to the INQ Newsletter
Sign-up for the INQBot weekly newsletter
Click here to sign up Existing user
Advertisement
INQ Poll

Christmas computer sales

Will you be buying a new computer this Christmas?