HTTP/2 with HAProxy and Jetty

HTTP/2 is now the official RFC 7540, and it’s about time to deploy your website on HTTP/2, to get the numerous benefits that HTTP/2 brings. A very typical deployment is to have Apache (or Nginx) working as a reverse proxy to a Servlet Container such as Jetty or Tomcat. This Read more

Introduction to HTTP2 in Jetty

Jetty 9.3 supports HTTP/2 as defined by RFC7540 and it is extremely simple to enable and get started using this new protocol that is available in most current browsers. Getting started with Jetty 9.3 Before we can run HTTP/2, we need to setup Jetty for HTTP/1.1 (strictly speaking this is 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

Simple Jetty HelloWorld Webapp

With the jetty-maven-plugin and Servlet Annotations, it has never been simpler to start developing with Jetty! While we have not quiet achieved the terseness of some convention over configuration environments/frameworks/languages, it is getting close and only 2 files are needed to run a web application! Maven pom.xml A minimal maven 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

Jetty HTTP/2 cleartext upgrade

With the approach of the release candidate for Jetty 9.3.0 in the next days, we have implemented support for HTTP/2 cleartext upgrade mechanism, on server side, resolving issue #465857. This means that you can configure a Jetty server to speak cleartext HTTP/1.1 and cleartext HTTP/2 on the same server port. 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

Last NPN & ALPN Update for JDK 7

As you may know already, Oracle has announced that OpenJDK 7, with its last 7u80 release, has reached end of life as of today. In March 2012, the Jetty project announced that it had implemented the SPDY protocol and, along with it, the first pure Java NPN implementation that was Read more

HTTP/2 Support for HttpClient

Jetty’s HttpClient is a fast, scalable, asynchronous implementation of a HTTP client. But it is even more. Jetty’s HttpClient provides a high level API with HTTP semantic. This means that your applications will be able to perform HTTP requests and receive HTTP responses with a rich API. For example, you Read more