It’s not been a year since the GA release of WildFly 9.0, but already, the final release of WildFly 10.0, compatible with Java EE 7 and Java 8, is ready to roll, and it’s loaded with a few useful new features.
As with WildFly 8 and WildFly 9, the latest version of the app server formerly known as JBoss AS implements the Java EE 7 Full and Web Profile standards, and is fully compatible with NetBeans, Eclipse, IntelliJ, and OpenShift. Building on the back of WildFly 9, it includes all the big features from this release, including support for HTTP/2 and SPDY, baked into web server Undertow, as well as the new intelligent load balancing capabilities this release introduced.
This time around, thanks to the fruitful union of the HornetQ and Apache ActiveMQ project just over a year ago, Red Hat have bundled next-generation messaging broker ActiveMQ Artemis into the WildFly line-up. Taking the place of the HornetQ project as WildFly’s JMS broker, this broker is packed with a number of useful add-ons, including support for protocols like AMQP, Stomp, ActiveMQ’s native messaging protocol ‘OpenWire’ and JMS 2.
In this release, there are also some new clustering capabilities. These include HA single deployments – a reimagining of a feature from AS 6.0 and earlier. This feature allows you deploy on a single node at any given time, and should the node fail for any reason, will automatically start the deployment on another node. All policies for controlling HA singleton behaviour are managed by a shiny new “singleton” subsystem.
Along with this, there’s the introduction of HA singleton MDBs and MDB delivery groups. Singleton MDBs support infrastructures which require message delivery on an individual host. In the event of failure, another host with the same application deployed will step in and take over the message processing. MDB deliver groups enable administrators to enable and disable “delivery groups” via an MDB based management operation, supporting environments with external custom failover mechanisms.
There’s also SLSB and MDB automatic pool sizing, meaning WildFly now pools stateless session beans by default, with pool size calculated relative to the size of the IO worker pool and auto-tuned to match system resources. Migration operations for discontinued subsystems like jbossweb (AS 7.1.) have been introduced, and there have been a number of tunings to Hibernate 5.