Administering the WildFly 11/12 and JBoss EAP 7.1 Application Servers Training

Answers to Popular Questions:

 
Yes, this class can be tailored to meet your specific training needs.
Yes, we provide Java consulting services.
Yes, group discounts are provided.

Course Description

 
This course covers all the important administrative tasks that are required to administer this new version of the server. It starts with basic structure, architecture and installation, and moves on to working with the various management tools and deploying applications. Configuration and management of all the important services and subsystems are covered, as is security, domains, and clustering. All management tools are covered, including direct editing of XML configuration files, using the CLI (Command Line Interface), and using the Web-based Management Console.
Course Length: 4 Days
Course Tuition: $1690 (US)

Prerequisites

Some experience in working with JBoss servers.

Course Outline

 
Session 1: WildFly Introduction and Installation
Java EE Overview and Architecture
WildFly Server Background and Overview
Installing and Starting WildFly Server
Server Suspend Mode
Working with WildFly Server
Documentation Overview
 
Session 2: Structure and Architecture
WildFly Server Directory and File Structure
Server Architecture and Configuration
Server Config File - Extensions, Subsystems, Schemas, Paths
Interfaces and Socket Bindings
 
Session 3: Configuration and Management - Part 1
Overview of Management Options
Understanding the Management Model and the XML Config Files
Using the CLI (Command Line Interface)
Overview
Navigating the Management Tree
Working with Operations and Commands
Creating/Deleting Nodes
Using the Management Console
 
Session 4: Application Deployment
Java EE Deployment Archives (JARs, WARs, EARs)
Deployment/Undeployment with the CLI and Management Console
Deployment Scanner - Auto-Deployment in WildFly Server
Marker Files and Auto-deployment
 
Session 5: Configuration and Management - Part 2
JBoss Modules and Modular Classloading
Defining a Module
Working with Dependencies
Server Logging
Handlers, Log Levels, Formatters and Pattern Strings
Configuring Application Logging
Configuring Audit Logging
 
Session 6: Subsystem Configuration
JNDI and Naming Overview
Naming Subsystem Overview and Configuration
Datasource and JCA Overview
Datasource and Driver Configuration (XML, CLI, and Admin Console)
Datasource Monitoring, and Tuning
Thread Pools - History and Current Configuration
Undertow Web Container
Undertow Overview
Undertow Configuration - listeners and workers (XML and CLI)
Host and Filter Configuration
HTTP/2 Support
The H2 Database and ExampleDS
EJB Container/Subsystem (SLSB Pooling, MDB, SFSB Cache, Monitoring)
Other Subsystems in Brief (remoting, ee, infinispan)
WF12 Only: Using Java EE 8
 
Session 7: Messaging in WildFly Server
Messaging and JMS (Java Message Service) Overview
HornetQ Overview
Messaging Subsystem Configuration (XML, CLI, and Admin Console)
General Configuration
Connectors and Acceptors
Configuring Connection Factories
Configuring Queues and Topics (XML, CLI, and Admin Console)
Monitoring and Managing
Address and Security Settings
 
Session 8 : Security
WildFly/JEE Security Overview
General Requirements
"Legacy" Security and Elytron Security
Security Domains and Realms
RBAC
Securing the Management Interfaces
Application Security
Java EE Security Overview
Authentication, Authorization, Identity
Linking Applications to a Security Domain
Security Info Caching
RBAC - Role Based Access Control
Resource Security
Configuring TLS/SSL/HTTPS
Credential Store - Protecting Sensitive Strings
[Optional] Overview of Elytron Security Subsystem
Overview< and Architecture
Configuration Overview
Usage Overview
 
Session 9: Clustering and HTTP Load Balancing
Clustering Overview
WildFly Server Cluster Overview (including HA Singleton)
Cluster Configuration - JGroups
Architectures - Load Balancers and Client Interceptors (Proxies)
HTTP Load Balancing
Built-in load balancer
Apache httpd load balancer
mod_cluster Overview
httpd.conf Configuration
Installation Choices
modculster Subsystem Configuration
Management
 
Session 10: WildFly Server Domain Mode - A Hands-On Exploration
Domain Mode Overview
Domain Topology - Domain Controllers, Host Controllers, Server Groups
domain.xml - Domain Configuration, Server Groups
host.xml - Domain Controller
host.xml - Host Controllers, Processes and Server Instances
Management - Management Console and CLI
Deployment/Undeployment - via Management Console and CLI
 
Session 11: Tuning and Monitoring
Enabling Statistics
Web Container (Undertow) Tuning - Statistics, Worker Threads
EJB Tuning - Bean Instances, Thread Pools
Database Access / Datasources
Clustering Communication and Replication
Monitoring Runtime Data
Java Virtual Machine (JVM) Awareness
Heap Size
Garbage Collection (GC) Overview and Generational GC

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Java Uses & Stats

Java is Used For:
Android & IOS Development Software Products Video Games Desktop GUI's
Difficulty
Popularity
Year Created
1995
Pros

Most Commonly Used: 
According to Oracle, three billion devices run on Java.  And, because of its real-world applications, it consistently ranks at the top of the TIOBE Programming Community Index. 

Great Career Choice: 
Some of the fastest-growing salaries in the U.S. in 2018 are for Java developers.  (Glassdoor)  

Android Apps Development:
Developers predominatly use their Java skills in building apps for Google's Android. The Android platform is the number one mobile paltform in the world

It Can Run On Any Platform:
Java can compile on Windows and run the same compiled file on Linux, Windows and Mac.

Great Supporting IDE's:
Over the years, coding in Java has become simpler with the introduction of open source development tools, i.e. Eclipse and NetBeans that use Java capabilities for debugging.  
 

Cons

Uses a Lot of Memory:
Performance can be significantly slower with Java and more memory-consuming than natively compiled languages such as C or C++.

Difficulty in Learning: 
Learning Java can be a bit challenging if you are a beginner.  However, once you get the hang of Object Oriented Programming and a decent grasp of the syntax, you will be well on your way.

Slow Start Up Times:
There is quite a bit of one-time initialization done by JDK classes before compiling as well as loading classes and verification (making sure code doesn't do evil things, all of which takes longer that some other languages such as C. 

Verbose and Complex Code:
Long, over-complicated sentences make code less readable and scannable. Compare to let's say Python, we can see how clear Python code appears: It doesn’t require semicolons; uses “and,” “or,” and “not” as operators instead of Java’s “&&,” “||,” and “!”; and generally has fewer bells and whistles such as parentheses or curly braces.

Commercial License Cost:
Companies have to prepare for the changes that Oracle will institute in 2019 . Today, the current version of Java is free and available for redistribution for general purpose computing. However, If you are a DEVELOPER, Oracle recommends you review the roadmap information for Java SE 8 and beyond and take appropriate action depending on the type of application you develop and your distribution mode.

Java Job Market
Average Salary
$102,000
Job Count
26,856
Top Job Locations

New York City 
San Jose
Washington D.C, 

Complimentary Skills to have along with Java

- If you are an experienced Java developer, learning a complimentary language to Java should come much more naturally.  As an example JetBrains recently created the Kotlin programming language which is officially supported by Google for mobile development.  Kotlin compiles to Java bytecode and runs on the JVM; it's purported to address many of Java's shortcomings...

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.