Thread Starvation with Eat What You Kill

This is going to be a blog of mixed metaphors as I try to explain how we avoid thread starvation when we use Jetty’s eat-what-you-kill[n]The EatWhatYouKill strategy is named after a hunting proverb in the sense that one should only kill to eat. The use of this phrase is not Read more

By gregw, ago

Jetty-9.3 Features!

Jetty 9.3.0 is almost ready and Release Candidate 1 is available for download and testing!  So this is just a quick blog to introduce you to what is new and encourage you to try it out! HTTP2 The headline feature in Jetty-9.3 is HTTP/2 support. This protocol is now a Read more

By gregw, ago

G1 Garbage Collector at GeeCON 2015

I had the pleasure to speak at the GeeCON 2015 Conference in Kraków, Poland, where I presented a HTTP/2 session and a new session about the G1 garbage collector (slides below). G1 Garbage Collector: Details and Tuning from Simone Bordet I have to say that GeeCON has become one of Read more

Eat What You Kill

A producer consumer pattern for Jetty HTTP/2 with mechanical sympathy Developing scalable servers in Java now requires careful consideration of mechanical sympathetic issues to achieve both high throughput and low latency.  With the introduction of HTTP/2 multiplexed semantics to Jetty, we have taken the opportunity to introduce a new execution Read more

By gregw, ago

HTTP/2 Push Demo

I have recently presented “HTTP/2 and Java: Current Status” at a few conferences (slides below). HTTP/2 and Java: Current Status from Simone Bordet The HTTP/2 protocol has two big benefits over HTTP/1.1: Multiplexing and HTTP/2 Push. The first feature, Multiplexing, gives an edge to modern web sites that perform ~100 Read more

Jetty 9 Quick Start

The auto discovery features of the Servlet specification can make deployments slow and uncertain. Working in collaboration with Google AppEngine, the Jetty team has developed the Jetty quick start mechanism that allows rapid and consistent starting of a Servlet server.   Google AppEngine has long used Jetty for it’s footprint Read more

By admin, ago

Jetty-9 Iterating Asynchronous Callbacks

While Jetty has internally used asynchronous IO since 7.0, Servlet 3.1 has added asynchronous IO to the application API and Jetty-9.1 now supports asynchronous IO in an unbroken chain from application to socket. Asynchronous APIs can often look intuitively simple, but there are many important subtleties to asynchronous programming and Read more

By admin, ago

Jetty SPDY push improvements

After having some discussions on spdy-dev and having some experience with our current push implementation, we’ve decided to change a few things to the better. Jetty now sends all push resources non interleaved to the client. That means that the push resources are being sent sequentially to the client one Read more

Jetty SPDY to HTTP Proxy

We have SPDY to SPDY and HTTP to SPDY proxy functionality implemented in Jetty for a while now. An important and very common use case however is a SPDY to HTTP proxy. Imagine a network architecture where network components like firewalls need to inspect application layer contents. If those network Read more

Asynchronous Rest with Jetty-9

This blog is an update for jetty-9 of one published for Jetty 7 in 2008 as an example web application  that uses Jetty asynchronous HTTP client and the asynchronoous servlets 3.0 API, to call an eBay restful web service. The technique combines the Jetty asynchronous HTTP client with the Jetty Read more

By admin, ago