Tutoriel Wildfly : configurarion Serveur Web ‘Undertow’

/////Tutoriel Wildfly : configurarion Serveur Web ‘Undertow’

Introduction

AVANT Undertow

— > conteneur web Jboss AS = Jboss Web = fork de Tomcat

Contexte et enjeux

Besoins

1) serveur conforme aux Specs Java EE 7 –> Http Upgrade : un client a besoin de passer d’une communication HTTP ‘traditionnelle’ à une communication type WebSocket ou HTTPS ou HTTP2

2) serveur léger, flexible et avec meilleure performances

Résultat

UNDERTOW : peut scaler à des millions de connections, excellent temps de réponse

UNDERTOW basé sur l’API NIO Java

UNDERTOW est flexible : grâce au chaînage des handlers, undertow peut aussi bien être un serveur web http qu’un conteneur EJB 3.2

Architecture

Undertow = listeners + handlers + Filters + workers +

archi-undertow-2

Configuration

subsystem ‘undertow’ (listeners, handlers) couplé (pour worker) au subsysem ‘io’

dans le fichier standalone.xml, la majorité de la configuration est géree dans 2 balises : ‘server’ et ‘servlet-container’

conf-1-undertow.png

TP1 : Mise en oeuvre de filtres

TP 1 –> Ajouter un header « Societe » ayant pour valeur « Pierre et Vacances » dans toute réponse HTTP du serveur Undertow

2 étapes :

Etape 1 (dans section ‘filters’)

Ajouter :

‘response-header name= »societe-header » header-name= »Societe » header-value= »Pierre et Vacances »/’

Etape 2 (dans ‘host’)

Ajouter :
‘filter-ref name= »societe-header »/’

Démarrez le serveur (ou ‘reload’ avec le CLI)

Accédez à la page d’accueil

Analysez les en-têtes de la réponse serveur

header-filtre.png

Expliquez

TP2 : Ajouter un log d’accès

dans section ‘host’ , ajouter

‘access-log directory= »$jboss.server.log.dir » pattern= »common » prefix= »access_log » rotate= »true » suffix= ».log » worker= »default »/’

Expliquez

TP3 : Hote virtuel

Configurez Undertow afin être capable de répondre à requête http://asterix:8080 en arrivant sur une page d’accueil différente de la page d’accueil par défaut de Wildfly

EXEMPLE CONFIG

(éléments de correction TPs 1, 2, 3

standalone

TP4 : Filtre d’erreur

CLI

/subsystem=undertow/server=default-server/host=default-host/filter-ref=404handler/:add(predicate=true)

/subsystem=undertow/configuration=filter/error-page=404handler/:add(code=404,path=/var/docs/www/error.html)

TP5 : Statistiques d’une application

3 étapes :

1) activer les statistiques dans undertow

/subsystem=undertow/:write-attribute(name=statistics-enabled,value=true)

2) recharger le serveur (‘reload’ via CLI)

reload

3) obtenir statistiques d’une application (ex : monappli.war)

/deployment=monappli.war/subsystem=undertow/:read-resource(includeruntime=true)

2018-01-25T07:51:37+01:00

Contactez nous

241 rue DUGUESCLIN, 69003 Lyon

Web : Objis : spécialiste formation Java