Chapter 1. Introduction

The Performance Tuning Guide is a comprehensive reference on the configuration and optimization JBoss Enterprise Application Platform 5. Performance tuning the platform is unique to each installation because of internal and external factors. The optimization of external factors including: application design, scalability, database performance, network performance and storage performance are outside the scope of this book. If Red Hat Enterprise Linux is the underlying operating system, refer to the Red Hat Enterprise Linux Performance Tuning Guide and Storage Administration Guide for further optimization advice. Otherwise refer to the specific vendor's documentation.
Performance tuning is not a goal in itself but a cyclical process of performance monitoring, configuration changes and review. The objective should be to meet business requirements, with each change having a measurable objective. It's recommended to apply one change at a time and monitor the results so that you can judge what does and does not result in a performance improvement. Not all workloads are equal, and not all changes will result in a performance improvement. The JBoss Enterprise Application Platform's components are the main focus of this book but coverage also includes a chapter on the Java Virtual Machine as it's performance is also critical.

1.1. Platform Components

JBoss Enterprise Application Platform architecture

Figure 1.1. JBoss Enterprise Application Platform architecture

Figure 1.1, “JBoss Enterprise Application Platform architecture” illustrates the components of JBoss Enterprise Application Platform. Performance tuning of each component is covered in its own chapter but since each component interacts with one or more other components there is some overlapping material.
For each component various performance-related settings are discussed, including:
  • Connection pooling
  • Thread pooling
  • Object and/or component pooling
  • I/O configuration
  • Logging and JMS provider
  • Replication options
  • Caching