Jetty (web server)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Jetty
Jetty logo.png
Developer(s) Eclipse Foundation
Stable release 9.2.2 / 23 July 2014; 34 days ago (2014-07-23)[1]
Written in Java
Operating system Cross-platform (JVM)
Type Web server Servlet
License Apache License 2.0, Eclipse Public License 1.0
Website eclipse.org/jetty

Jetty is a pure Java-based HTTP (Web) server and Java Servlet container. While Web Servers are usually associated with serving documents to humans, Jetty is now often used for machine to machine communications, usually within larger software frameworks. Jetty is developed as a free and open source project as part of the Eclipse Foundation. The web server is used in products such as Apache ActiveMQ,[2] Alfresco,[3] Apache Geronimo,[4] Apache Maven, Apache Spark, Google App Engine,[5] Eclipse,[6] FUSE,[7] Twitter's Streaming API[8] and Zimbra.[9] Jetty is also the server in open source projects such as Lift, Eucalyptus, Red5, Hadoop and I2P.[10] Jetty supports the latest Java Servlet API (with JSP support) as well as protocols SPDY and WebSocket.

Overview[edit]

Developed as an independent open source project, in 2009 Jetty moved to Eclipse.[11][12] Jetty provides Web services in an embedded Java application and it is already a component of the Eclipse IDE. It supports AJP, JASPI, JMX, JNDI, OSGi, WebSocket and other Java technologies.[5]

Use in Hadoop[edit]

Apache Hadoop is an example of how Jetty is used in a framework. Hadoop uses Jetty as a web server for different uses in several modules:

  • The NameNode and the JobTracker use Jetty to serve their admin pages.[13]
  • The TaskTracker uses Jetty to receive the map, reduce and shuffle operations from the JobTracker.[13]

In Hadoop 0.23, Jetty has been replaced by Netty in the TaskTracker for shuffle operations.[14]

History[edit]

Originally developed in the Sydney suburb of Balmain by software engineer Greg Wilkins, Jetty was originally a HTTP server component of Mort Bay Server (Mort Bay is an area of Balmain.)[15]

Jetty was originally called IssueTracker (its original application) and then MBServler (Mort Bay Servlet server). Neither of these were much liked, so Jetty was finally picked.[15]

Jetty was started in 1995 and was hosted by MortBay, creating version 1.x and 2.x, until 2000. From 2000 to 2005, Jetty was hosted by sourceforge.net where version 3.x, 4.x, and 5.x were produced. In 2005, the entire Jetty project moved to codehaus.org.[16] As of 2009, the core components of Jetty have been moved to Eclipse.org, and Codehaus.org continues to provide integrations, extensions, and packaging of Jetty versions 7.x and 8.x (not 9.x)[17][18]

Version Home Java Version Protocols Servlet Version JSP Version Status
9.1.x Eclipse[18] 1.7 HTTP/1.1, WebSocket JSR356, SPDY 3.1 2.3 Stable since 2013-11-18[19]
9.0.x Eclipse[18] 1.7 HTTP/1.1, WebSocket, SPDY 3.0 (tracking 3.1 drafts) 2.2 Stable since 2013-03-08[20]
8.x Eclipse,[18] Codehaus[17] 1.6 HTTP/1.1, WebSocket, SPDY 3.0 2.1 Stable
7.x Eclipse,[18] Codehaus[17] 1.5, J2ME HTTP/1.1, WebSocket, SPDY 2.5 2.1 Stable
6.x Codehaus[17] 1.4–1.5 HTTP/1.1 2.5 2.0 Deprecated[21]
5.x Sourceforge 1.2–1.5 HTTP/1.1 2.4 2.0 Deprecated
4.x Sourceforge 1.2, J2ME HTTP/1.1 2.3 1.2 Ancient
3.x Sourceforge 1.2 HTTP/1.1 RFC2068 2.2 1.1 Fossilized
2.x Mortbay 1.1 HTTP/1.0 RFC1945 2.1 1.0 Legendary
1.x Mortbay 1.0 HTTP/1.0 RFC1945 Mythical

See also[edit]

References[edit]

  1. ^ Erdfelt, Joakim (23 July 2014). "[jetty-announce] Jetty 9.2.2.v20140723 Released!". Jetty mailing list. Retrieved 12 August 2014. 
  2. ^ "ActiveMQ with Ajax and Jetty". Jetty Wike (Codehaus). Retrieved 2011-04-12. 
  3. ^ JM.Pascal (April 2010). "Maven + Alfresco : Jetty, Boostrap and Profil". Going to an OpenSource ECM World.... Retrieved 2011-04-12. 
  4. ^ "Configuring Virtual Hosts in Geronimo-Jetty". Apache Geronimo Documentation. Retrieved 2011-04-12. 
  5. ^ a b Wickesser, Craig (5 August 2009). "Google Chose Jetty for App Engine". InfoQ. C4Media Inc. Retrieved 12 Apr 2011. 
  6. ^ "jetty://". Eclipse. Retrieved 12 Apr 2011. 
  7. ^ "class JettyHttpComponent". FuseSource. Red Hat. Retrieved 12 Apr 2011. [dead link]
  8. ^ "Twitter Streaming API and Apache Wink". Retrieved 19 May 2011. 
  9. ^ Zhuang, JJ (18 December 2007). "Zimbra Blog: Why we switched to Jetty". Zimbra. VMware. Retrieved 12 Apr 2011. 
  10. ^ "Powered by Jetty". Retrieved 24 Sep 2012. 
  11. ^ Lieber, Adam (December 2008). "Jetty: The Twelve Year Journey to Market Maturity". Linux Gazette. Retrieved 28 June 2013. 
  12. ^ "About Jetty". Codehaus. Retrieved 30 November 2011. 
  13. ^ a b Stack and Laffoon, Mark (July 23,). "HBase, mail # user - servlet container (embedded jetty)". Retrieved 11 October 2013. 
  14. ^ Murthy, Arun (August 25, 2011). "Apache Hadoop 0.23". Hortonworks. Retrieved 11 October 2013. 
  15. ^ a b "Jetty/FAQ - Eclipsepedia". Wiki.eclipse.org. 2011-09-06. Retrieved 2014-07-17. 
  16. ^ "Jetty - Java HTTP Servlet Server / Mailing Lists". Sourceforge.net. Retrieved 2014-07-17. 
  17. ^ a b c d About Jetty, Located on Codehaus.
  18. ^ a b c d e About Jetty, Located on Eclipse.
  19. ^ "[jetty-announce] Jetty 9.1.0.v20131115 Stable Release!". Dev.eclipse.org. 2013-11-18. Retrieved 2014-07-17. 
  20. ^ "[jetty-announce] Announcing Jetty 9.0.0". Dev.eclipse.org. 2013-03-08. Retrieved 2014-07-17. 
  21. ^ "[jetty-announce] Jetty releases 7.6.0 and 8.1.0". Dev.eclipse.org. Retrieved 2014-07-17. 

External links[edit]