JBoss Application Server v5.x Administration and Clustering (Linux) - JBS200

This course teaches the deployment and administration of web applications to a JBoss Application Server v5.x environment. This course concentrates on providing best-practice solutions to handle common problems that occur in a JBoss environment so students will have a high-level of skill with regard to JBoss administration. Configuring a cluster of multiple JBoss servers is also covered extensively. This class covers both the unsupported open source product (JBoss Application Server) and the supported platform available from JBoss/RedHat (JBoss Enterprise Application Platform). This class covers both so no matter which type of JBoss environment you have this course is right for you.

Course ID: JBS200
Duration: 5 days
Audience: Webmasters,System administrators
Prerequisites: Familiarity with basic Linux operational skills
Topics:

JBoss Introduction

  • Goals of Enterprise Applications
  • What is Java?
  • What is Java EE?
  • The Java EE Specifications
  • Role of Application Server
  • What is a Servlet?
  • Servlet Execution
  • What is a JSP?
  • JSP Code Sample
  • What is an EJB?
  • EJB Types
  • EJB Examples
  • Model-View-Controller Architecture
  • MVC An Example
  • JBoss Family
  • JBoss Application Server
  • Relation to JBoss Enterprise Application Platform
  • Differences Between JBoss AS and JBoss EAP
  • JBoss Support and Documentation

What is New in JBoss Application Server v5.x

  • JBoss History (or \\\"What Took So Long?\\\")
  • Project Structure
  • Microcontainer
  • Deployers
  • Changes You Will Notice
  • JBoss Enterprise Application Platform
  • Java EE 5 Certification
  • New Administration Console
  • Using Java 6
  • Directory Structure Changes
  • New Configurations
  • JBoss Messaging
  • ServiceBindingManager
  • Using JBoss 5.x With Eclipse
  • JBoss Seam
  • Alternatives to JBoss

Installing JBoss

  • Installation Prerequisites
  • Java Version
  • JBoss Installation
  • JBoss Installer
  • JBoss Installer
  • Starting and Stopping JBoss
  • Network Binding Behavior
  • JBoss Admin Consoles - JMX
  • JBoss Admin Consoles - Web Console
  • JBoss Admin Consoles - Administration Console
  • JBoss Configurations
  • JBoss Configurations
  • Issues in Managing JBoss Configurations
  • Updating JBoss Version
  • Other Common Components

Java EE Overview for Administrators

  • Java EE Components
  • Java EE Vendor Specifications
  • Containers
  • Java EE Blueprint
  • Services
  • JDBC
  • Data Sources
  • Java Naming and Directory Interface
  • Java Message Service
  • JavaMail
  • Java EE Connector Architecture
  • Java Transaction API
  • Security
  • Lifecycle Management
  • Application Server Architecture
  • Java EE Application Structure
  • EAR File
  • What are Modules?
  • Java EE Deployment Descriptors
  • Web Module
  • EJB Module
  • Client Module
  • JBoss Deployment Descriptors
  • Code Annotations
  • JBoss Default EJB Deployment
  • JBoss Application Deployment
  • Updating an Application
  • Applications in Administration Console

Using Ant and Eclipse to Simplify JBoss Administration

  • Ant
  • Sample Ant buildfile
  • Common Ant Tasks
  • Eclipse
  • Eclipse
  • Managing JBoss Configuration Files with Eclipse
  • XML in Eclipse
  • Ant Features in Eclipse
  • Exporting JBoss Configurations
  • File Versioning with Eclipse
  • Perspectives and Views
  • Eclipse Tips
  • Using Ant and Eclipse to Simplify JBoss Configuration

Connecting to a Database

  • What is JDBC?
  • JDBC Driver
  • Typical JDBC Use
  • Problems to Address
  • Data Source Architecture
  • JDBC Data Sources
  • Typical Use of Data Source
  • JPA and Data Source
  • Hypersonic Database
  • Examining the Hypersonic Database
  • Types of JBoss Data Sources
  • Adding JDBC Drivers
  • Adding JDBC Drivers
  • Configure Data Source
  • Configure Data Source
  • Common Data Source Properties
  • Common Data Source Properties
  • Connection Pool Properties
  • Connection Pool Properties
  • Monitor Connection Pool
  • Data Source Failover
  • Managing Datasources in the Administration Console

JBoss Logging

  • Log4j
  • Configuring Log4j in JBoss
  • Log Output
  • Standard Appenders
  • Appender Example
  • Log Categories
  • Log Categories
  • Category Example
  • Appender References
  • Logging Code
  • Adjusting Log Threshold
  • Adjusting Log Threshold from the Consoles
  • Common Tasks for Log4j
  • Logging in JBoss EAP Production Configuration
  • HTTP Access Logs
  • JBoss HTTP Access Log

JNDI and Naming Services

  • Naming Service
  • Phone Number Example
  • Objects in Namespace
  • What is JNDI?
  • Using JNDI
  • NameNotFoundException
  • JNDI References
  • JNDI References
  • JNDI References
  • JNDI Binding in JBoss
  • JNDI Binding in JBoss
  • JNDIView MBean
  • JNDIView MBean
  • Binding JNDI References
  • Binding JNDI References

JBoss Internal Architecture

  • JMX Intro
  • JBoss Microcontainer
  • POJO Services
  • Defining Custom JBoss Services
  • JBoss "Bootstrapping"
  • Deployers
  • Invokers and Remoting

JMS Messaging

  • Messaging Intro
  • Messaging Example
  • Messaging Components
  • Messaging Types
  • JMS (Java Messaging Service)
  • JMS Resources
  • Message Driven Beans (MDB)
  • JBoss Messaging
  • JBoss Messaging
  • Differences with JBossMQ
  • Configuring JMS
  • Configuring JMS
  • MDB Destinations
  • Sucker Password

Monitoring and Tuning JBoss

  • Monitoring Tools
  • JBoss Consoles
  • MBean Attributes
  • Live Graphs and Snapshots
  • Monitors
  • Monitor Configuration
  • Email Monitor Configuration
  • Command Line Queries
  • Common Performance Tuning
  • JBoss Web Thread Pools

Java Memory Management

  • Java Heap Space
  • Heap Size Limits
  • Default Size Limits
  • Garbage Collection Basics
  • Allocation Failure (AF)
  • Free Space Threshold
  • Garbage Collection Mechanism
  • GC Performance Improvements
  • Generational Garbage Collection
  • Thread Local Heap (TLH)
  • Memory Tuning Goals
  • Steady State Heap Size
  • Analyzing Steady State Behavior
  • Effect of Initial Heap Size on GC
  • Optimizing GC Duration

Sun HotSpot 6.0 JDK Memory Management

  • Generational GC
  • Sizing the Generations
  • Heap Growth and Shrinkage
  • Client and Server JVM Modes
  • GC Collector Option
  • GC Ergonomics

Java EE Security in JBoss

  • Authentication and Authorization
  • Challenge Mechanism
  • Java EE Security Roles
  • Java EE Security Roles
  • JBoss Security Domain
  • JBoss Security Domain
  • Login Modules
  • Using a Database for Authentication
  • Using a Database for Authentication
  • Using an LDAP Server
  • Using an LDAP Server
  • Chaining Multiple Login Modules
  • Chaining Multiple Login Modules - Example
  • Stacking Login Modules
  • Stacking Login Modules
  • Stacking Login Modules - Example
  • Hashed Passwords
  • Testing Security
  • Testing Security

JBoss Security

  • Securing JBoss Configurations
  • Security of Administrative Applications
  • Securing the JMX Console
  • Securing the Administration Console
  • Securing the Web Console
  • Securing the JBoss Web Service Management Application
  • Securing JBoss Invokers
  • Security Differences with JBoss EAP
  • Providing Security for Binary Commands
  • Encrypting Data Source Passwords
  • Encrypting Data Source Passwords
  • Digital Certificates
  • Creating Self-Signed Certificate
  • SSL (Secure Sockets Layer)
  • Enabling SSL on JBoss Web Container

Introduction to Web Services

  • A Conceptual Look at Services
  • Defining Services
  • Service Communication Analogy
  • Three Key Service Questions
  • Connecting the Dots
  • SOA - Runtime Implementation
  • What is a Web Service?
  • Enterprise Assets as Services
  • Advantages of Web Services
  • Web Service Business Models
  • Web Service Business Models
  • Binding via SOAP
  • SOAP in Protocol Stack
  • SOAP Structure
  • Interface via WSDL
  • WSDL Structure
  • Locating a Service
  • UDDI Overview
  • UDDI Terminology
  • UDDI Structure
  • WS-I Overview
  • WS-I Deliverables
  • JBoss Web Service Deployment
  • Routing Web Service Requests
  • Routing Web Service Requests
  • Writing Portable Web Service Clients for JBoss
  • JBoss @WebServiceRef Customization
  • JBoss @WebServiceRef Customization
  • JBoss Web Service Tools
  • JBoss Web Service Tools

Overview of Clustered Architecture

  • Clusters
  • Horizontal Scaling
  • Horizontal Scaling
  • Vertical Scaling
  • Vertical Scaling
  • Clustering Terminology
  • Clustering in JBoss
  • Clustering in JBoss
  • Running Multiple Instances of JBoss on Single Machine
  • Running Multiple Instances of JBoss on Single Machine
  • Running Multiple Instances of JBoss on Single Machine
  • Running Multiple Instances of JBoss on Single Machine
  • Adding JBoss Instances to a Cluster
  • Adding JBoss Instances to a Cluster
  • Clusters on the Same Network
  • Viewing JBoss Cluster Information

JGroups Network Communication

  • Introduction to JGroups
  • Introduction to JGroups
  • Group Coordinator
  • Joining the Group
  • JGroups Layering
  • Sample JGroups Layers
  • Transport Protocols
  • Network Impact
  • Discovery Protocols
  • Discovery Protocols
  • Merging Groups
  • Failure Detection Protocols
  • Group Membership Service
  • State Transfer

Clustered Deployment

  • Deployment Options
  • Regular Deployment
  • HA-Singleton Deployment
  • Farming Deployment
  • Farming Deployment
  • Issues of Farm Deployment

Load Balancing with Apache and mod_jk

  • Role of Web Server
  • Role of Web Server
  • Supported Web Servers
  • Using Apache with JBoss
  • Configuring mod_jk
  • Adding mod_jk Module
  • Configure mod_jk
  • Configure mod_jk
  • Configure workers.properties
  • mod_jk Load Balancing
  • Example workers.properties
  • Configure uriworkermap.properties
  • Configure JBoss
  • Apache mod_jk Status
  • Enabling Apache mod_jk Status

Distributed Applications

  • Application State
  • Distributed Failover
  • HTTP Session State Replication
  • JBossCache
  • JBoss Cache Configuration
  • Utilizing Session Replication
  • Clustered Session EJBs
  • Clustering Stateless Session Beans (EJB 3.x)
  • Clustering Stateful Session Beans (EJB 3.x)
  • Clustering Stateless Session Beans (EJB 2.x)
  • Clustering Stateful Session Beans (EJB 2.x)
  • Problems Deploying to default Configuration

Hibernate JPA Caching

  • Need for Caching
  • Factors Involved in Caching
  • Using Hibernate to Cache JPA Entities
  • Types of Hibernate JPA Cached Data
  • Steps to Configure Hibernate Second Level Cache
  • Decide JBoss Cache Configuration
  • Standard JBoss Cache Configurations
  • Configure JPA Persistence Caching Properties
  • Sample persistence.xml with Hibernate Caching
  • Configure JPA Entities to Allow Caching
  • Configure JPA Queries to Allow Caching
  • Tuning Cache Eviction
  • JBoss Cache EvictionRegionConfig

Clustered Services

  • Introduction
  • Clustered Services
  • Clustered JBoss Messaging
  • Assign a Unique ServerPeerID
  • Configure Clustered JBoss Messaging
  • Configure Clustered JBoss Messaging
  • Clustered JBoss Messaging Destinations
  • Clustered JNDI Services
  • Clustered JNDI Services
  • HA-JNDI Clients
  • Access HA-JNDI in Java Code
  • Access HA-JNDI in Java Code
  • Access HA-JNDI by Modifying jndi.properties File
  • Properties in jndi.properties File
  • Properties in jndi.properties File
  • HA-JNDI With EJBs

Rolling Out JBoss to Production

  • Securing Management Functions
  • Removing Hypersonic
  • Configuring JBoss with Firewalls
  • Configuring JBoss with Firewalls
  • Setting a Root Web Application

JBoss Operations Network

  • JBoss Operations Network
  • JBoss ON Features
  • JBoss ON Architecture
  • JBoss ON Server
  • JBoss ON Agent
  • Supported Platforms
  • JBoss ON Console
  • Dashboard
  • Browse Resources
  • Resource Detail
  • Monitoring
  • Metric Summary
  • Metric Detail Chart
  • Inventory
  • Control
  • Configuration
  • Alerts
  • Console Users
  • Command Line
  • Summary
  • Reference
 

Call Toll-free 877-245-6815 or 303-416-3056 to set up your IT Training today.