All posts

What Eclipse Jetty Actually Does and When to Use It

You start a new microservice. It runs fast on localhost, but you need a real web server that can handle requests, manage sessions, and not turn into a memory-eating monster under load. Enter Eclipse Jetty, the small, sharp, and very reliable web server hiding behind many of the apps you already use. Jetty began as a lightweight servlet container, but it evolved into much more. It’s now a full HTTP server and client library designed for modern, modular Java applications. Unlike heavier stacks, J

Free White Paper

End-to-End Encryption + Sarbanes-Oxley (SOX) IT Controls: The Complete Guide

Architecture patterns, implementation strategies, and security best practices. Delivered to your inbox.

Free. No spam. Unsubscribe anytime.

You start a new microservice. It runs fast on localhost, but you need a real web server that can handle requests, manage sessions, and not turn into a memory-eating monster under load. Enter Eclipse Jetty, the small, sharp, and very reliable web server hiding behind many of the apps you already use.

Jetty began as a lightweight servlet container, but it evolved into much more. It’s now a full HTTP server and client library designed for modern, modular Java applications. Unlike heavier stacks, Jetty thrives in embedded setups. You can drop it inside your app like any other dependency and spin it up programmatically. No external container, no deployment gymnastics. For developers who want control without the drama, Jetty feels like a precision tool rather than a platform.

At its core, Jetty manages HTTP connections efficiently. It implements the Servlet and WebSocket specifications, so it plays nicely with frameworks like Spring Boot. It supports HTTP/2 and asynchronous I/O, which means it can juggle thousands of idle connections without sweating. This makes it perfect for chat servers, APIs, or anything that values non-blocking performance.

So how does Eclipse Jetty fit into modern infrastructure? Teams often pair it with reverse proxies such as NGINX, Kubernetes Ingress controllers, or identity-aware proxies that wrap access policies around it. Jetty manages application logic while the proxy handles identity, audit logging, and TLS termination. In a secure setup, authentication flows through an OIDC provider like Okta or AWS IAM, then passes verified headers downstream to Jetty. The result is consistent authentication everywhere without modifying your app’s core code.

Common developer challenges—session affinity, rolling updates, and request throttling—are easier when Jetty runs embedded. You control the lifecycle from inside the JVM. Need to swap a handler or tune thread pools dynamically? Just script it. Errors that would require container restarts elsewhere become on-the-fly config changes here.

Continue reading? Get the full guide.

End-to-End Encryption + Sarbanes-Oxley (SOX) IT Controls: Architecture Patterns & Best Practices

Free. No spam. Unsubscribe anytime.

Key benefits of using Eclipse Jetty:

  • Starts in seconds, even on small compute.
  • Handles async workloads gracefully with low latency.
  • Supports HTTP/2 and WebSocket out of the box.
  • Embeddable for custom automation pipelines.
  • Proven in enterprise-grade, SOC 2, and cloud-native environments.

Platforms like hoop.dev build on these same principles of controlled access and minimal surface area. Instead of manually wiring policies, they turn configurations into guardrails that automatically enforce identity and least privilege. Jetty might host your service, but hoop.dev ensures only the right humans and bots can talk to it.

How do you connect Eclipse Jetty to an identity provider?
Configure your proxy layer or servlet filter to accept OIDC tokens. Tools like Spring Security or a custom handler can validate the JWT and inject principal details into Jetty’s request scope. You get authentication integrated cleanly without reinventing the login wheel.

How does Eclipse Jetty compare to Tomcat or Undertow?
Tomcat is sturdy but heavier. Undertow is fast but more low-level. Jetty sits comfortably between them—stable yet flexible enough to embed or run standalone. For developers chasing performance and modularity, Jetty is often the sweet spot.

The punchline: Jetty gives you the simplicity and control that most frameworks bury under layers of abstraction. It’s the quiet workhorse for engineers who care about efficient, secure, and maintainable web infrastructure.

See an Environment Agnostic Identity-Aware Proxy in action with hoop.dev. Deploy it, connect your identity provider, and watch it protect your endpoints everywhere—live in minutes.

Get started

See hoop.dev in action

One gateway for every database, container, and AI agent. Deploy in minutes.

Get a demoMore posts