Wildfly 8

This is a basic introduction to the Wildfly 8 features.

  • High Performance Web Server (Undertow.io)
  • Port Reduction
  • Management Role Based Access Control (RBAC) & Auditing
  • Security Manager
  • Logging
  • Clustering
  • JDK8 Compatibility
  • Highlights

Undertow

  • Undertow.io
  • New core web server & servlet container - Can be used without any servlets as well
  • Non-blocking and blocking handlers
  • Traditional and asynchronous servlets
  • Lightweight: core jar coming in at under 1Mb
  • Web Socket Support
  • Supports Servlet 3.1
  • Embeddable: Can be embedded in an application or run standalone easily
  • Docs

Port reduction

  • All the protocols multiplexed over two HTTP ports: Management port and an Application port

Management Role Based Access Control (RBAC) & Auditing

  • Different sets of permissions control
  • Audit changes
  • Manage users
  • LDAP integration to support groups and roles

Security Manager

  • Per-deployment security permissions
  • Performance improvement
  • In addition to the standard Java EE permissions.xml, a more flexible jboss-permissions.xml descriptor is also supported.

Logging

  • The management API supports list and view log files on a server.
  • Possible to define custom formatters, apart from the default pattern formatter.
  • add-logging-api-dependencies attribute to enable / disable implicit server logging.
  • use-deployment-logging-config attribute enable / disable logging configuration files found on deployment.

Clustering

  • Support hugely refactored on Wildfly 8
  • Optimized distributed web session for use with undertow
  • Optimized single sign-on (SSO) support for undertow
  • Optimized stateful @EJB caching implementation
  • Public clustering API: Applications can view cluster topology, listen for its changes, broadcast/submit commands to a cluster (remote execution)

Core distribution

  • Wildfly 8 architecture distribution. Ideal for framework authors

JDK8 compatibility

  • Full support to JDK8.
  • Migration to the JDK8 is encouraged, and its new features may be used soon.

Web Services

  • @PolicySets: Policy assertions in predefined groups and scenarios.
  • WS-Discovery support: Allows selected deployments to be automatically registered with the discovery service, so outside consumers can discover available endpoints.
  • REST: includes RESTEasy 3 - supports the standard Java EE REST APIs (JAX-RS 2.0)

Highlights

  • Optimized boot process
  • Agressive memory management in order to minimize max heap memory allocation (= Less GC). Allow WildFly to run on devices with limited physical resources
  • No more **Hierarchical classloading** : Wildfly modular structure only links JAR files to the application when it needs it.
  • Centralized settings
  • Standalone and Domain (+servers) modes
  • Deployment API
  • Distributed caching (using Infinispan, a standalone project)
  • Distributed deployment on managed domain
  • Clustering API looks very promising. Samples

References

  • http://wildfly.org/news/2014/02/11/WildFly8-Final-Released/
  • http://cdn.oreillystatic.com/oreilly/booksamplers/packt/9781783285891_Sample.pdf
  • https://www.packtpub.com/application-development/wildfly-new-features
  • https://docs.jboss.org/author/display/WFLY8/How+do+I+migrate+my+application+from+AS5+or+AS6+to+WildFly
  • http://en.wikipedia.org/wiki/WildFly
  • http://www.mastertheboss.com/jboss-server/jboss-cluster/monitoring-a-cluster-using-wildfly-api