ApiaryActive
Try: pause · settings · learn · wipe
← Community / Reading Room
J
computing · 3 min read

Jetty

Jetty is a Java-based web server and servlet container developed by Eclipse Foundation. It is designed to be highly scalable, efficient, and customizable,…

Jetty is a Java-based web server and servlet container developed by Eclipse Foundation. It is designed to be highly scalable, efficient, and customizable, making it suitable for a wide range of web applications, from small to large-scale enterprise systems.

History

Jetty was first released in 1995 by a team led by Greg Wilkins. It was initially designed as a lightweight, high-performance web server for serving static content. Over the years, Jetty has undergone significant development, and in 1999, it was donated to the Apache Software Foundation (ASF). In 2006, the ASF transferred the Jetty project to the Eclipse Foundation, where it remains to this day.

Architecture

Jetty is built on top of a modular architecture, allowing developers to easily add or remove components as needed. The framework consists of several key components:

  • Server: The server module is responsible for handling incoming requests and sending responses. It supports various protocols, including HTTP/1.1, HTTP/2, and WebSocket.
  • Connector: The connector module manages the communication between the server and clients. It supports various connection protocols, including TCP, UDP, and SSL/TLS.
  • Handler: The handler module is responsible for processing incoming requests and generating responses. It can be customized using a variety of handler implementations.
  • Servlet Container: The servlet container module provides a runtime environment for deploying and executing servlets.

Features

Jetty offers a wide range of features, including:

  • High-performance: Jetty is designed to be highly efficient and scalable, making it suitable for large-scale web applications.
  • Flexible configuration: Jetty allows developers to customize its behavior using a variety of configuration options.
  • Support for various protocols: Jetty supports multiple protocols, including HTTP/1.1, HTTP/2, and WebSocket.
  • Integration with third-party libraries: Jetty can be easily integrated with other libraries and frameworks, such as Spring and Hibernate.
  • Extensive documentation: Jetty has an extensive documentation set, providing developers with the information they need to get started and customize the framework.

Use Cases

Jetty is suitable for a wide range of use cases, including:

  • Web servers: Jetty can be used as a standalone web server, serving static content and dynamic web applications.
  • Servlet containers: Jetty can be used as a servlet container, providing a runtime environment for deploying and executing servlets.
  • RESTful APIs: Jetty can be used to build RESTful APIs, providing a simple and efficient way to expose data and services over the web.
  • Enterprise systems: Jetty can be used to build large-scale enterprise systems, providing a scalable and customizable framework for web applications.

Community and Support

Jetty has an active community of developers and users, providing support and resources for those using the framework. The Eclipse Foundation hosts the Jetty project, and the community is involved in various aspects of the project, including development, testing, and documentation.

Mailing Lists

Jetty has several mailing lists for discussion and support, including:

  • jetty-dev: A mailing list for developers working on the Jetty project.
  • jetty-users: A mailing list for users and developers who need help or have questions about Jetty.
  • jetty-announce: A mailing list for announcements and news about the Jetty project.

Documentation

Jetty has an extensive documentation set, including:

  • User guide: A comprehensive guide to getting started with Jetty and using its features.
  • Developer guide: A guide to developing and customizing Jetty.
  • API documentation: Detailed documentation of the Jetty API and its components.

Conferences and Workshops

The Eclipse Foundation hosts various conferences and workshops for the Jetty community, including:

  • EclipseCon: An annual conference for Eclipse projects, including Jetty.
  • Jetty Workshop: A workshop dedicated to Jetty development and customization.

Books and Resources

Several books and resources are available for learning about Jetty, including:

  • "Jetty: The Definitive Guide" by Jason Brittain: A comprehensive guide to Jetty development and customization.
  • "Jetty in Action" by Jason Brittain and Daniel L. Steinberg: A practical guide to using Jetty in real-world applications.
  • Jetty documentation: The official Jetty documentation set, which includes user guides, developer guides, and API documentation.
Frequently asked
What is Jetty about?
Jetty is a Java-based web server and servlet container developed by Eclipse Foundation. It is designed to be highly scalable, efficient, and customizable,…
What should you know about history?
Jetty was first released in 1995 by a team led by Greg Wilkins. It was initially designed as a lightweight, high-performance web server for serving static content. Over the years, Jetty has undergone significant development, and in 1999, it was donated to the Apache Software Foundation (ASF). In 2006, the ASF…
What should you know about architecture?
Jetty is built on top of a modular architecture, allowing developers to easily add or remove components as needed. The framework consists of several key components:
What should you know about features?
Jetty offers a wide range of features, including:
What should you know about use Cases?
Jetty is suitable for a wide range of use cases, including:
References & sources
  1. Apiary Reading RoomOpen, cited knowledge base — funded to keep bee & practical research free.
From the Apiary Reading Room. Opinion & editorial — not financial advice. We don't overclaim.
More from the Reading Room