Jetty

Jetty is a widely used open-source [[Java]]-based web server and servlet container developed by the Eclipse Foundation. It provides a platform for hosting web applications and services, particularly in environments where lightweight and efficient solutions are desired. Jetty is known for its small footprint, scalability, flexibility, and ease of embedding in other applications.

As a web server, Jetty can serve static content like [[HTML]], [[CSS]], and images. As a servlet container, it can host Java-based web applications using technologies like [[Java Servlets|servlets]] and [[JavaServer Pages (JSP)]].

Jetty is designed to be lightweight and fast, which makes it an attractive choice for applications that require a smaller operational footprint and quick startup times. One of Jetty's standout features is its ability to be embedded into Java applications. This means Jetty can be instantiated and controlled programmatically within a Java application, making it ideal for microservices and standalone applications.

It supports asynchronous processing, which allows it to handle a large number of concurrent requests with a relatively small number of threads. Jetty was one of the first servlet containers to support [[WebSockets]] natively for real-time communication and also supports HTTP/2. It provides robust security features, including [[SSL-TLS|SSL/TLS]] support, making it suitable for secure web applications.

Jetty can be easily configured via [[Extensible Markup Language]] files, Java API, or command-line arguments. This flexibility makes it adaptable to various deployment scenarios. Jetty integrates well with various Java frameworks and technologies, such as [[Spring Framework|Spring]], [[OSGi]], [[JMX]], and [[JNDI]].

Its lightweight nature and ease of embedding make Jetty a popular choice for testing web applications in development environments. Being an open-source project, Jetty has a strong community and is actively maintained, which ensures regular updates and availability of support.