Red Hat JBoss Enterprise Application Platform 7.1

Similar documents
Red Hat JBoss Enterprise Application Platform 7.2

Red Hat Developer Studio 12.0

Red Hat Process Automation Manager 7.0 Planning a Red Hat Process Automation Manager installation

Red Hat CloudForms 4.0

Red Hat JBoss Developer Studio 11.1

Red Hat JBoss A-MQ 6.3

Red Hat JBoss Data Grid 7.1 Feature Support Document

Red Hat Application Migration Toolkit 4.0

Red Hat AMQ 7.2 Introducing Red Hat AMQ 7

Red Hat JBoss Enterprise Application Platform 7.2

.NET Core 2.0 Release Notes for Containers

Red Hat JBoss Enterprise Application Platform 7.0

Red Hat CloudForms 4.5 Integration with AWS CloudFormation and OpenStack Heat

Red Hat JBoss A-MQ 6.0

Red Hat OpenStack Platform 13

Red Hat Application Migration Toolkit 4.2

Red Hat Satellite 6.3

Red Hat JBoss BRMS 6.0

Red Hat JBoss Data Virtualization 6.2 Using the Dashboard Builder. David Sage

Red Hat JBoss Fuse 6.1

Red Hat OpenStack Platform 13

Red Hat 3Scale 2.0 Terminology

Red Hat OpenStack Platform 13

Red Hat JBoss Fuse 6.3

Red Hat Decision Manager 7.0

Red Hat JBoss Data Virtualization 6.3 Getting Started Guide

Red Hat JBoss Data Grid 6.4

Red Hat Mobile Application Platform Hosted 3

Red Hat JBoss Fuse 6.1

Red Hat Enterprise Virtualization 3.6

Red Hat CloudForms 4.1

Red Hat CloudForms 4.0

Red Hat JBoss Data Virtualization 6.3 Glossary Guide

Red Hat Cloud Infrastructure 1.1

Red Hat OpenShift Application Runtimes 1

Red Hat JBoss Enterprise Application Platform 7.1

Red Hat Process Automation Manager 7.0 Executing a business process in Business Central

Red Hat Enterprise Linux OpenStack Platform 7 Fujitsu ETERNUS Back End Guide

Red Hat Cloud Suite 1.1

Edition 0.1. real scenarios for managing EAP instances. Last Updated:

Red Hat Virtualization 4.1 Product Guide

Red Hat JBoss Developer Studio Integration Stack 10.0 Installation Guide

Red Hat Virtualization 4.1 Hardware Considerations for Implementing SR-IOV

Red Hat CloudForms 4.5

Red Hat Process Automation Manager 7.0 Managing and monitoring business processes in Business Central

Red Hat Virtualization 4.0

Red Hat JBoss Data Virtualization 6.4 Quick Starts Guide

Red Hat 3scale 2.3 Accounts

Red Hat Ceph Storage 3

Red Hat Virtualization 4.2

Red Hat JBoss Developer Studio Integration Stack 9.0 Installation Guide

Red Hat OpenStack Platform 9 Introduction to the OpenStack Dashboard

Red Hat OpenStack Platform 8 Configure firewall rules for Red Hat OpenStack Platform director

Red Hat Enterprise Virtualization 3.6

Red Hat Single Sign-On 7.2

Red Hat Developer Studio 12.0

OpenShift Dedicated 3 Release Notes

Red Hat JBoss BRMS 6.1

Red Hat CloudForms 4.6

Red Hat OpenStack Platform 13

Red Hat Decision Manager 7.0 Migrating from Red Hat JBoss BRMS 6.4 to Red Hat Decision Manager 7.0

Red Hat Decision Manager 7.0 Migrating from Red Hat JBoss BRMS 6.4 to Red Hat Decision Manager 7.0

Red Hat OpenStack Platform 10 CephFS Back End Guide for the Shared File System Service

Red Hat Enterprise Linux 5 Global Network Block Device

JBoss Enterprise Application Platform 5

Red Hat JBoss Data Grid 7.1 Migration Guide

Red Hat OpenStack Platform 12

Red Hat Single Sign-On 7.1 Getting Started Guide

Red Hat Ceph Storage 2 Using Keystone to Authenticate Ceph Object Gateway Users

Red Hat Security Data API 1.0

Red Hat Enterprise Virtualization 3.6

Red Hat Enterprise Virtualization 3.6 Introduction to the User Portal

Red Hat Ceph Storage 3

Red Hat JBoss Developer Studio 9.1

Red Hat JBoss BRMS 6.4

Red Hat JBoss Developer Studio 9.0

Red Hat JBoss BPM Suite 6.4

Red Hat JBoss Middleware for OpenShift 3

Red Hat JBoss Fuse 6.1

Red Hat JBoss Developer Studio Integration Stack 8.0

Red Hat CloudForms 4.6

Red Hat Application Migration Toolkit 4.0

Red Hat Process Automation Manager 7.0 Migrating from Red Hat JBoss BPM Suite 6.4 to Red Hat Process Automation Manager 7.0

Red Hat Fuse 7.0 Installing on JBoss EAP

Red Hat CloudForms 4.5 Introduction to the Self Service User Interface

Red Hat Mobile Application Platform Hosted 3

Red Hat OpenStack Platform 14

Red Hat Container Development Kit 3.0 Release Notes and Known Issues

Red Hat Process Automation Manager 7.0 Installing and configuring Process Server on IBM WebSphere Application Server

Red Hat Development Suite 1.1 Installation Guide

Red Hat OpenStack Platform 10 Product Guide

Red Hat Application Migration Toolkit 4.2

For Red Hat JBoss BPM Suite

Red Hat Decision Manager 7.0 Designing a decision service using guided rules

Red Hat JBoss Enterprise Application Platform 6.4

Red Hat Fuse 7.1 Installing on JBoss EAP

Red Hat Network Satellite 5.4

Red Hat Process Automation Manager 7.0 Getting started with business processes

Red Hat Fuse 7.0 Installing on Apache Karaf

Red Hat Developer Studio 12.9

Transcription:

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP For Use with Red Hat JBoss Enterprise Application Platform 7.1 Last Updated: 2018-02-08

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP For Use with Red Hat JBoss Enterprise Application Platform 7.1

Legal Notice Copyright 2018 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux is the registered trademark of Linus Torvalds in the United States and other countries. Java is a registered trademark of Oracle and/or its affiliates. XFS is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project. The OpenStack Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community. All other trademarks are the property of their respective owners. Abstract This document provides a high-level, conceptual overview of Red Hat JBoss Enterprise Application Platform as well as several topics on which JBoss EAP is based.

Table of Contents Table of Contents. CHAPTER......... 1... OVERVIEW.......... OF... GENERAL......... CONCEPTS........................................................... 3. 1.1. JAVA 3 1.2. APPLICATION SERVERS 3 1.3. JAVA EE 7 3. CHAPTER......... 2... OVERVIEW.......... OF... JBOSS....... EAP............................................................. 4. 2.1. ABOUT JBOSS EAP 7 4 2.2. SUBSYSTEMS 5 2.3. HIGH AVAILABILITY 5 2.4. OPERATING MODES 5. CHAPTER......... 3... EXAMPLES................................................................................. 6. 3.1. SIMPLE EXAMPLE 6 3.2. EXPANDED EXAMPLE 6 1

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP 2

CHAPTER 1. OVERVIEW OF GENERAL CONCEPTS CHAPTER 1. OVERVIEW OF GENERAL CONCEPTS Before understanding how Red Hat JBoss Enterprise Application Platform can be configured and deployed, there are some important concepts to understand. 1.1. JAVA Java is a programming language and a computing platform that incorporates concepts such as objectorientation, classes, and concurrency. Java applications are compiled down to bytecode and are run inside a Java Virtual Machine (JVM). 1.2. APPLICATION SERVERS An application server, or app server, is software that provides an environment to run web applications. Most app servers also provide functionality to web applications running in their environment through a set of APIs. For example, an app server can provide an API for connecting to a database. 1.3. JAVA EE 7 Java EE (Java Platform, Enterprise Edition) is a standards-based enterprise platform that provides both an API and runtime environment for running and developing Java applications. The goal is to improve developer productivity by providing rich enterprise capabilities in easy to consume frameworks that eliminate boilerplate and reduce technical burden. The frameworks that compose Java EE are heavily tested in combination. Java EE 7, based on JSR 342, is a follow up to Java EE 6, with the primary focus being additional simplification of APIs to access container services while increasing support for emerging web technologies, such as HTML5. Java EE 7 includes support for profiles, or subsets, of APIs. The Java EE 7 specification defines the full platform and the Web Profile. Java EE 7 Web Profile The Java EE 7 Web Profile is designed for web application development and supports a subset of the APIs defined by Java EE 7 related web-based technologies. Java EE 7 Full Platform The Java EE 7 full platform contains all of the APIs defined by Java EE 7, including all the items in the Web Profile. When developing EJBs, messaging applications, and web services (in contrast to web applications), use the full platform. 3

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP CHAPTER 2. OVERVIEW OF JBOSS EAP 2.1. ABOUT JBOSS EAP 7 Red Hat JBoss Enterprise Application Platform (JBoss EAP) 7.1 is a certified implementation of the Java Enterprise Edition (Java EE) 7 full platform and Web Profile specifications. Major versions of JBoss EAP are forked from the WildFly community project at certain points when 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 cherrypicked 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.1 is forked from a working branch of WildFly 11. 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 Feature Description Java EE 7 compliant Java Enterprise Edition 7 full platform and Web Profile certified. Managed Domain 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. The management CLI also includes a batch mode that can script and automate management tasks. Directly editing the JBoss EAP XML configuration files is not recommended. Simplified directory layout The modules directory contains all application server modules. The domain and standalone directories contain the artifacts and configuration files for domain and standalone deployments respectively. 4

CHAPTER 2. OVERVIEW OF JBOSS EAP Feature Description 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. 2.2. SUBSYSTEMS 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. 5

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP CHAPTER 3. EXAMPLES Below are several examples to illustrate how JBoss EAP works and where it fits into different environments. 3.1. SIMPLE EXAMPLE This example shows a simple JBoss EAP setup. The JBoss EAP instance has two applications deployed to it. It is also configured to connect to a database using the datasources subsystem and a Kerberos server which can use either the legacy security subsystem or the elytron subsystem. These connections are exposed to the deployed applications. The JBoss EAP instance handles requests through the undertow subsystem and directs those requests to the appropriate application. The applications use the APIs exposed by JBoss EAP to connect to the database and Kerberos server, and perform their implemented business logic. After completion, the applications send a response back to the requester through the undertow subsystem. 3.2. EXPANDED EXAMPLE 6

CHAPTER 3. EXAMPLES This example illustrates a more complex setup involving three JBoss EAP instances arranged in a managed domain with either a load balancer or a web server. The three instances are also configured to support high availability through load balancing using mod_cluster and session replication using Infinispan. All three JBoss EAP instances have a web application, a web service, and EJB deployed. One JBoss EAP instance has a JMS queue configured through the messaging-activemq subsystem. All three JBoss EAP instances have connections to a database through the datasource. They also have a connection to the LDAP server using either the legacy security subsystem or the elytron subsystem. In addition, one JBoss EAP instance is configured to connect to an external message broker through the messaging-activemq subsystem. Those configured connections are exposed to the applications, web services, EJBs, and JMS queues deployed to that respective instance. All inbound requests intended for the application, web service, or EJB are first received by the load balancer or web server. Based on the configured load balancing algorithm and the information provided by each JBoss EAP instance, the web server or load balancer directs that request to the appropriate JBoss EAP instance. The JBoss EAP instance handles requests through the undertow subsystem and directs those requests to the appropriate application. The applications use the APIs exposed by JBoss EAP to connect to the database and Kerberos server, and perform their implemented business logic. After completion, the applications send a response back to the requester through the undertow subsystem. Any non-persisted information, for example session information, is propagated among the JBoss EAP instances through the infinispan subsystem. 7

Red Hat JBoss Enterprise Application Platform 7.1 Introduction to JBoss EAP Revised on 2018-02-08 10:23:14 EST 8