Chapter 2. Overview of JBoss EAP
2.1. About JBoss EAP 7
Red Hat JBoss Enterprise Application Platform 7.0 (JBoss EAP 7) is a certified implementation of the Java Enterprise Edition 7 (Java EE 7)
Web profile specifications.
Major versions of JBoss EAP are forked from the Wildfly community project at certain points where the community project has reached the desired feature completeness level. After that point, an extended period of testing and productization takes place, in which JBoss EAP is stabilized, certified, and enhanced for production use. During the lifetime of a JBoss EAP major version, selected features may be cherry-picked and back-ported from the community project into a series of feature enhancing minor releases within the same major version family. For example, JBoss EAP 7.0 is forked from WildFly 10.
JBoss EAP provides preconfigured options for features such as high-availability clustering, messaging, and distributed caching. It also enables users to write, deploy, and run applications using the various APIs and services that JBoss EAP provides.
JBoss EAP includes a modular structure that allows service enabling only when required, improving startup speed. The web-based management console and management command line interface (CLI) make editing XML configuration files unnecessary and add the ability to script and automate tasks. In addition, JBoss EAP includes APIs and development frameworks for quickly developing secure and scalable Java EE applications.
Table 2.1. Features of JBoss EAP
Java Enterprise Edition 7 full and web profile certified.
Centralized management of multiple server instances and physical hosts, while a standalone server allows for a single server instance. Per-server group management of configuration, deployment, socket bindings, modules, extensions, and system properties. Centralized and simplified management of application security (including security domains).
Management console and management CLI
New domain or standalone server management interfaces. XML configuration file editing is no longer required. The management CLI also includes a batch mode that can script and automate management tasks.
Simplified directory layout
The modules directory now contains all application server modules. The common and server-specific lib directories are deprecated. The domain and standalone directories contain the artifacts and configuration files for domain and standalone deployments respectively.
Modular class-loading mechanism
Modules are loaded and unloaded on demand. This improves performance, has security benefits, and reduces start-up and restart times.
Streamlined datasource management
Database drivers are deployed like other services. In addition, datasources are created and managed using the management console and management CLI.
Many of the APIs and capabilities that are exposed to applications deployed to JBoss EAP are organized into subsystems. These subsystems can be configured by administrators to provide different behavior, depending on the goal of the application. For instance, if an application requires a database, a datasource can be configured in the
datasources subsystem and accessed by that application after it is deployed to that JBoss EAP server or domain.
2.3. High Availability
High availability (HA) in JBoss EAP refers to multiple JBoss EAP instances working together to provide applications that are more resistant to fluctuations in traffic, server load, and server failure. HA incorporates concepts such as scalability, load balancing, and fault tolerance.
2.4. Operating Modes
In addition to providing functionality and APIs to its applications, JBoss EAP has powerful management capabilities. These management capabilities differ depending on which operating mode is used to start JBoss EAP. JBoss EAP offers a standalone server operating mode for managing discrete instances and a managed domain operating mode for managing groups of instances from a single control point.