Undertow Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 21: Line 21:


=Artifacts=
=Artifacts=
* <tt>undertow-core</tt>
* <tt>undertow-servlet</tt> provides support for Servlet 3.1
* <tt>undertow-websockets-jsr</tt> provides support for the Java API for Websockets ([[JSR-356]])


=Request Lifecycle=
=Request Lifecycle=

Revision as of 01:54, 19 January 2016

Internal

Overview

Undertow is a web server written in Java. It provides both blocking and non-blocking APIs based on NIO. It has a composition-based architecture that allows assembling a web server combining small single purpose handlers.

Undertow is embeddable, its lifecycle is controlled by the embedding application and its configuration is controlled programmatically via API calls. Undertow is the default web server in WildFly since version 8, and in this case the configuration is exposed via XML in the server configuration file as:

        ...
        <subsystem xmlns="urn:jboss:domain:undertow:3.0">
            ...
        </subsystem>
        ...

It has support for Servlet 3.1.

Artifacts

  • undertow-core
  • undertow-servlet provides support for Servlet 3.1
  • undertow-websockets-jsr provides support for the Java API for Websockets (JSR-356)

Request Lifecycle

XNIO Concepts

HttpServerExchange

An exchange can be in blocking or non-blocking mode, and it can be put in blocking mode.

Handler