Oracle SOA Suite 11g Performance Tuning Cookbook

Featuring over 100 recipes, this handy cookbook will walk you through the different ways to optimize the performance of the Oracle SOA Suite 11g. Essential reading for administrators, developers, and architects.

Oracle SOA Suite 11g Performance Tuning Cookbook

Cookbook
Matt Brasier, Nicholas Wright

Featuring over 100 recipes, this handy cookbook will walk you through the different ways to optimize the performance of the Oracle SOA Suite 11g. Essential reading for administrators, developers, and architects.
$10.00
$54.99
RRP $32.99
RRP $54.99
eBook
Print + eBook
$12.99 p/month

Get Access

Get Unlimited Access to every Packt eBook and Video course

Enjoy full and instant access to over 3000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Code Files
+ Collection
Free Sample

Book Details

ISBN 139781849688840
Paperback328 pages

About This Book

  • Tune the Java Virtual Machine to get the best out of the underlying platform
  • Learn how to monitor and profile your Oracle SOA Suite applications
  • Discover how to design and deploy your application for high-performance scenarios
  • Identify and resolve performance bottlenecks in your Oracle SOA Suite infrastructure

Who This Book Is For

This book is for Oracle SOA Suite 11g administrators, developers, and architects who want to understand how they can maximise the performance of their SOA Suite infrastructure. The recipes contain easy to follow step-by-step instructions and include many helpful and practical tips. It is suitable for anyone with basic operating system and application server administration experience.

Table of Contents

Chapter 1: Identifying Problems
Introduction
Identifying new size problems with jstat
Identifying permanent generation problems with jstat
Monitoring garbage collection with jstat
Identifying locking issues with jstack
Identifying performance problems with jstack
Identifying performance problems using VisualVM on HotSpot
Identifying performance problems using JRMC on JRockit
Using JRockit flight recorder to identify problems
Monitoring JDBC connections with the WebLogic console
Identifying slow-running database queries
Identifying slow-running components with the Enterprise Manager
Chapter 2: Monitoring Oracle SOA Suite
Introduction
Installing the Hyperic server
Installing Hyperic agents
Configuring Hyperic to monitor SOA Suite 11g
Monitoring the SOA Suite server availability
Monitoring the JVM memory usage
Monitoring the platform CPU usage
Monitoring the data source usage
Monitoring open sockets
Monitoring committed transactions
Configuring alerts in Hyperic
Monitoring the system using the DMS servlet
Chapter 3: Performance Testing
Introduction
Installing Apache JMeter
Creating a web service test using JMeter
Running JMeter on multiple servers
Checking responses in JMeter tests
Monitoring SOA Suite while testing
Recording user web sessions with JMeter
Designing advanced load tests
Running performance tests from the Cloud
Chapter 4: JVM Memory
Introduction
Increasing the JVM heap size
Setting Xmx and Xms to the same value
Setting the size of the Permanent Generation heap
Calculating the total memory used by your application
Viewing the memory used using JRMC for JRockit
Viewing the memory used using VisualVM for HotSpot
Setting the size of the thread stack
Chapter 5: JVM Garbage Collection Tuning
Introduction
Setting the new size
Setting the survivor ratio
Choosing a garbage collection algorithm in HotSpot
Choosing a garbage collection algorithm in JRockit
Turning on verbose garbage collection
Tuning to reduce the number of full garbage collections
Disabling the RMI garbage collector
Disabling explicit GC
Chapter 6: Platform Tuning
Introduction
Tuning global transaction timeouts
Increasing the HTTP accept backlog
Reducing the server logging level
Finding out which JVM you are using
Using large pages in Linux
Increasing the number of file descriptors in Linux
Tuning the SOA Suite EJB timeouts
Upgrading to a newer JVM
Setting the Linux kernel swappiness to low
Using the Oracle JRockit JVM
Running your domain in the production mode
Creating a boot.properties file
Chapter 7: Data Sources and JMS
Introduction
Setting the data source pool sizes
Configuring data source testing
Configuring data source growing and shrinking
Setting data source connection timeouts
Tuning database XA timeouts
Tuning connections in the native EIS database adapter
Configuring the WebLogic thread pool
Using JMS file persistence
Tuning JMS connection factories
Chapter 8: BPEL and BPMN Engine Tuning
Introduction
Tuning the dispatcher invoke threads
Tuning the dispatcher engine threads
Tuning the dispatcher system threads
Disabling BPEL monitors and sensors
Reducing the audit level
Changing a BPEL process to be transient
Reducing the completion persist level
Disabling persistence on invocation
Setting the audit store policy
Reducing audit trail size threshold
Increasing large document threshold
Reducing SOA infra log levels
Purging data from the BPEL store
Ensuring automatic database statistics gathering is enabled
Tuning Oracle database parameters
Tuning the Oracle database
Chapter 9: Mediator and BAM
Introduction
Setting Mediator Parallel Metrics Level
Setting Mediator Parallel Worker Threads
Setting Mediator Parallel Maximum Rows Retrieved
Setting Parallel Locker Thread Sleep
Using batched delivery in the BAM Adapter
Chapter 10: Rules and Human Workflow
Introduction
Disabling automatic release timers globally
Choosing the correct workflow service client
Preventing looping and inefficient rule execution
Tuning rule execution
Chapter 11: SOA Application Design
Introduction
Using BPEL process parallelization
Using non-blocking service invocations in BPEL flows
Turning off payload validation and composite state monitoring
Designing BPEL processes to reduce persistence
Using parallel routing rules in Mediator components
Setting HTTP timeouts for external services
Tuning BPEL adapter properties
Chapter 12: High Performance Configuration
Introduction
Configuring a cluster of SOA Suite servers
Configuring an OHS load balancer
Tuning for deployment on a virtualized infrastructure
Using distributed JMS destinations in a cluster
Using JMS bridges to improve the enqueue speed
Choosing deployment hardware

What You Will Learn

  • Monitor your SOA Suite environment
  • Configure the memory available to the Java Virtual Machine
  • Tune the Java garbage collector
  • Configure a WebLogic server to handle large loads
  • Tune BPEL, BPMN, and Mediator engines
  • Performance test your application
  • Design your SOA Suite components for maximum performance
  • Configure a cluster of SOA Suite servers
  • Tune the operating system and virtualization layers for SOA Suite

In Detail

Oracle SOA Suite 11g forms the heart of many organisations’ Service Oriented Architecture. Yet for such a core component, simple information on how to tune and configure SOA Suite and its infrastructure is hard to find. Because Oracle SOA Suite 11g builds on top of a variety of infrastructure components, up until now there has been no one single complete reference that brings together all the best practices for tuning the whole SOA stack.

Oracle SOA Suite 11g Performance Tuning Cookbook contains plenty of tips and tricks to help you get the best performance from your SOA Suite infrastructure. From monitoring your environment so you know where bottlenecks are, to tuning the Java Virtual Machine, WebLogic Application Server, and BPEL and BPMN mediator engines, this book will give you the techniques you need in a easy to follow step-by-step guide.

Starting with how to identify problems, and building on that with sections on monitoring, testing, and tuning, the recipes in this book will take you through many of the options available for performance tuning your application.

There are many considerations to make when trying to get the best performance out of the Oracle SOA Suite platform. This performance Cookbook will teach you the whole process of tuning JVM garbage collection and memory, tuning BPEL and BPMN persistence settings, and tuning the application server. This book focuses on bringing together tips on how to identify the key bottlenecks in the whole SOA Suite infrastructure, and how to alleviate them.

The Oracle SOA Suite 11g Performance Tuning Cookbook will ensure that you have the tools and techniques to get the most out of your infrastructure, delivering reliable, fast, and scalable services to your enterprise.

Authors

Table of Contents

Chapter 1: Identifying Problems
Introduction
Identifying new size problems with jstat
Identifying permanent generation problems with jstat
Monitoring garbage collection with jstat
Identifying locking issues with jstack
Identifying performance problems with jstack
Identifying performance problems using VisualVM on HotSpot
Identifying performance problems using JRMC on JRockit
Using JRockit flight recorder to identify problems
Monitoring JDBC connections with the WebLogic console
Identifying slow-running database queries
Identifying slow-running components with the Enterprise Manager
Chapter 2: Monitoring Oracle SOA Suite
Introduction
Installing the Hyperic server
Installing Hyperic agents
Configuring Hyperic to monitor SOA Suite 11g
Monitoring the SOA Suite server availability
Monitoring the JVM memory usage
Monitoring the platform CPU usage
Monitoring the data source usage
Monitoring open sockets
Monitoring committed transactions
Configuring alerts in Hyperic
Monitoring the system using the DMS servlet
Chapter 3: Performance Testing
Introduction
Installing Apache JMeter
Creating a web service test using JMeter
Running JMeter on multiple servers
Checking responses in JMeter tests
Monitoring SOA Suite while testing
Recording user web sessions with JMeter
Designing advanced load tests
Running performance tests from the Cloud
Chapter 4: JVM Memory
Introduction
Increasing the JVM heap size
Setting Xmx and Xms to the same value
Setting the size of the Permanent Generation heap
Calculating the total memory used by your application
Viewing the memory used using JRMC for JRockit
Viewing the memory used using VisualVM for HotSpot
Setting the size of the thread stack
Chapter 5: JVM Garbage Collection Tuning
Introduction
Setting the new size
Setting the survivor ratio
Choosing a garbage collection algorithm in HotSpot
Choosing a garbage collection algorithm in JRockit
Turning on verbose garbage collection
Tuning to reduce the number of full garbage collections
Disabling the RMI garbage collector
Disabling explicit GC
Chapter 6: Platform Tuning
Introduction
Tuning global transaction timeouts
Increasing the HTTP accept backlog
Reducing the server logging level
Finding out which JVM you are using
Using large pages in Linux
Increasing the number of file descriptors in Linux
Tuning the SOA Suite EJB timeouts
Upgrading to a newer JVM
Setting the Linux kernel swappiness to low
Using the Oracle JRockit JVM
Running your domain in the production mode
Creating a boot.properties file
Chapter 7: Data Sources and JMS
Introduction
Setting the data source pool sizes
Configuring data source testing
Configuring data source growing and shrinking
Setting data source connection timeouts
Tuning database XA timeouts
Tuning connections in the native EIS database adapter
Configuring the WebLogic thread pool
Using JMS file persistence
Tuning JMS connection factories
Chapter 8: BPEL and BPMN Engine Tuning
Introduction
Tuning the dispatcher invoke threads
Tuning the dispatcher engine threads
Tuning the dispatcher system threads
Disabling BPEL monitors and sensors
Reducing the audit level
Changing a BPEL process to be transient
Reducing the completion persist level
Disabling persistence on invocation
Setting the audit store policy
Reducing audit trail size threshold
Increasing large document threshold
Reducing SOA infra log levels
Purging data from the BPEL store
Ensuring automatic database statistics gathering is enabled
Tuning Oracle database parameters
Tuning the Oracle database
Chapter 9: Mediator and BAM
Introduction
Setting Mediator Parallel Metrics Level
Setting Mediator Parallel Worker Threads
Setting Mediator Parallel Maximum Rows Retrieved
Setting Parallel Locker Thread Sleep
Using batched delivery in the BAM Adapter
Chapter 10: Rules and Human Workflow
Introduction
Disabling automatic release timers globally
Choosing the correct workflow service client
Preventing looping and inefficient rule execution
Tuning rule execution
Chapter 11: SOA Application Design
Introduction
Using BPEL process parallelization
Using non-blocking service invocations in BPEL flows
Turning off payload validation and composite state monitoring
Designing BPEL processes to reduce persistence
Using parallel routing rules in Mediator components
Setting HTTP timeouts for external services
Tuning BPEL adapter properties
Chapter 12: High Performance Configuration
Introduction
Configuring a cluster of SOA Suite servers
Configuring an OHS load balancer
Tuning for deployment on a virtualized infrastructure
Using distributed JMS destinations in a cluster
Using JMS bridges to improve the enqueue speed
Choosing deployment hardware

Book Details

ISBN 139781849688840
Paperback328 pages
Read More