You are previewing IBM Business Process Manager V8.5 Performance Tuning and Best Practices.
O'Reilly logo
IBM Business Process Manager V8.5 Performance Tuning and Best Practices

Book Description

This IBM® Redbooks® publication provides performance tuning tips and best practices for IBM Business Process Manager (IBM BPM) V8.5.5 (all editions) and IBM Business Monitor V8.5.5. These products represent an integrated development and runtime environment based on a key set of service-oriented architecture (SOA) and business process management (BPM) technologies. Such technologies include Service Component Architecture (SCA), Service Data Object (SDO), Business Process Execution Language (BPEL) for web services, and Business Processing Modeling Notation (BPMN).

Both IBM Business Process Manager and Business Monitor build on the core capabilities of the IBM WebSphere® Application Server infrastructure. As a result, Business Process Manager solutions benefit from tuning, configuration, and best practices information for WebSphere Application Server and the corresponding platform Java virtual machines (JVMs).

This book targets a wide variety of groups, both within IBM (development, services, technical sales, and others) and customers. For customers who are either considering or are in the early stages of implementing a solution incorporating Business Process Manager and Business Monitor, this document proves a useful reference. The book is useful both in terms of best practices during application development and deployment and as a reference for setup, tuning, and configuration information.

This book talks about many issues that can influence performance of each product and can serve as a guide for making rational first choices in terms of configuration and performance settings. Similarly, customers who already implemented a solution with these products can use the information presented here to gain insight into how their overall integrated solution performance can be improved.

Table of Contents

  1. Front cover
  2. Notices
    1. Trademarks
  3. IBM Redbooks promotions
  4. Preface
    1. Authors
    2. Now you can become a published author, too!
    3. Comments welcome
    4. Stay connected to IBM Redbooks
  5. Chapter 1. Overview
    1. 1.1 Products covered in this publication
    2. 1.2 Publication structure
  6. Chapter 2. Architecture best practices
    1. 2.1 Top tuning and deployment guidelines
    2. 2.2 Modeling and developing applications
      1. 2.2.1 Common best practices
      2. 2.2.2 Process Designer architecture best practices
      3. 2.2.3 Integration Designer best practices
    3. 2.3 Topology
      1. 2.3.1 Deploy appropriate hardware
      2. 2.3.2 Deploy local modules in the same server
      3. 2.3.3 Best practices for Deployment Environments
      4. 2.3.4 Evaluate service providers and external interfaces
    4. 2.4 Client environments
      1. 2.4.1 Optimize the topology
      2. 2.4.2 Use a high-performing browser
      3. 2.4.3 Enable browser caching
      4. 2.4.4 Physical location of servers
      5. 2.4.5 Use modern desktop hardware
    5. 2.5 Large business objects
      1. 2.5.1 Factors affecting large business object size processing
      2. 2.5.2 Large object design patterns
      3. 2.5.3 Data management
    6. 2.6 Use 64-bit JVMs
    7. 2.7 Business Monitor
      1. 2.7.1 Event processing
      2. 2.7.2 Dashboard
      3. 2.7.3 Database server
      4. 2.7.4 Topology
  7. Chapter 3. Development best practices
    1. 3.1 BPMN business process authoring best practices
      1. 3.1.1 Clear variables in exposed human services
      2. 3.1.2 Do not use multi-instance loops in system lane or batch activities
      3. 3.1.3 Use conditional joins only when necessary
      4. 3.1.4 Follow guidelines for error handling
      5. 3.1.5 Use sequential system lane activities efficiently
      6. 3.1.6 Ensure the Process Center is properly tuned and managed
      7. 3.1.7 Use fast connection for Process Designer and Process Center
      8. 3.1.8 Prevent WSDL validation from causing slow web serviceintegration
    2. 3.2 Case authoring best practices
      1. 3.2.1 Use required and automatically started case activities
      2. 3.2.2 Use case folder properties
    3. 3.3 Integration Designer best practices
      1. 3.3.1 Use share-by-reference libraries where possible
      2. 3.3.2 Ensure content in Toolkits is needed for multiple applications
      3. 3.3.3 Advanced Content Deployment considerations
      4. 3.3.4 Business object parsing mode considerations
      5. 3.3.5 Service Component Architecture considerations
      6. 3.3.6 Business Process Execution Language business process considerations
      7. 3.3.7 Human task considerations
      8. 3.3.8 Business process and human tasks client considerations
      9. 3.3.9 Transactional considerations
      10. 3.3.10 Invocation style considerations
      11. 3.3.11 Large object considerations
      12. 3.3.12 Mediation Flow Component considerations
    4. 3.4 Browser environment considerations
    5. 3.5 WebSphere InterChange Server migration considerations
  8. Chapter 4. Performance tuning and configuration
    1. 4.1 Tuning checklist
    2. 4.2 Common tuning parameters
      1. 4.2.1 Tracing and logging flags
      2. 4.2.2 Java memory management tuning parameters
      3. 4.2.3 Message-driven bean ActivationSpec
      4. 4.2.4 Process Engine navigation thread pools
      5. 4.2.5 Java Message Service connection pool sizes
      6. 4.2.6 Java Database Connectivity data source parameters
      7. 4.2.7 Tuning the Virtual Member Manager LDAP cache
      8. 4.2.8 Messaging engine properties
      9. 4.2.9 Run production servers in production mode
    3. 4.3 Process Portal tuning and usage
      1. 4.3.1 Use a high-performing browser
      2. 4.3.2 Enable browser caching
      3. 4.3.3 Locate the Process Portal physically close to the Process Server
      4. 4.3.4 Use the WORK tab to refresh the Task List
      5. 4.3.5 Use modern desktop hardware
      6. 4.3.6 Disable or uninstall add-ins or extensions
      7. 4.3.7 Process Portal Dashboard
    4. 4.4 Business Processing Modeling Notation business process tuning
      1. 4.4.1 How to Change Configuration Settings for BPMN Processing
      2. 4.4.2 Tune the Event Manager
      3. 4.4.3 Tune Participant Groups
      4. 4.4.4 Use fast disk subsystem for recovery logs and Lucene Task Search indexes
      5. 4.4.5 Remove unnecessary snapshots from the Process Server
      6. 4.4.6 Disable notifications and automatic task list refreshes if they are not required
      7. 4.4.7 Tune cache parameters
    5. 4.5 Process Center tuning
    6. 4.6 Advanced tuning
      1. 4.6.1 Trace and monitor considerations
      2. 4.6.2 Tune for large objects
      3. 4.6.3 Tune for maximum concurrency
      4. 4.6.4 Clustered topology tuning
      5. 4.6.5 Web services tuning
      6. 4.6.6 Tune Human Workflow for Business Space
      7. 4.6.7 Set AIX threading parameters
    7. 4.7 Tune for Business Process Execution Language business processes
      1. 4.7.1 Tune Work Manager-based navigation for business processes
      2. 4.7.2 Tune the business process container for Java Message Service navigation
      3. 4.7.3 Tune task list and process list queries
      4. 4.7.4 Tune Business Process Choreographer API calls
      5. 4.7.5 Tune intermediate components for concurrency
    8. 4.8 Mediation flow component tuning
      1. 4.8.1 Tune the database if using persistent messaging
      2. 4.8.2 Configure Service Registry and Repository cache timeout
    9. 4.9 Business Monitor tuning
      1. 4.9.1 Configure Java heap sizes
      2. 4.9.2 Configuring Common Event Infrastructure
      3. 4.9.3 Configure message consumption batch size
      4. 4.9.4 Key performance indicator caching
      5. 4.9.5 Enable the Data Movement Service
      6. 4.9.6 Dynamic KPI performance
      7. 4.9.7 Cognos tuning
      8. 4.9.8 DB2 tuning
    10. 4.10 Enable browser caching
      1. 4.10.1 Ensure browser cache is enabled in Internet Explorer
      2. 4.10.2 Ensure browser cache is enabled in Firefox
    11. 4.11 Tune the HTTP server
    12. 4.12 Advanced Java heap tuning
      1. 4.12.1 Monitoring garbage collection
      2. 4.12.2 Set the heap size for most configurations
      3. 4.12.3 Set the heap size when running multiple JVMs on one system
      4. 4.12.4 Reduce or increase heap size if OutOfMemory errors occur
    13. 4.13 Tuning for WebSphere InterChange Server migrated workloads
  9. Chapter 5. Database configuration, tuning, and best practices
    1. 5.1 Database tuning considerations
      1. 5.1.1 General database tuning
      2. 5.1.2 DB2 specific database tuning
      3. 5.1.3 Oracle specific database tuning
      4. 5.1.4 SQL Server specific database tuning
    2. 5.2 Tuning and recommendations for BPMN workload
      1. 5.2.1 Hot spot tables
      2. 5.2.2 Task list queries (saved searches)
      3. 5.2.3 Index considerations for Oracle
      4. 5.2.4 Index recommendation for the Performance Data Warehouse
    3. 5.3 Tuning and recommendations for BPEL workload
      1. 5.3.1 Hot spot tables
      2. 5.3.2 Task and process list queries (query tables)
      3. 5.3.3 Drop unutilized indexes
      4. 5.3.4 Use administrative task optimization
      5. 5.3.5 Follow the operating guidelines for the BPM database
      6. 5.3.6 Special tuning considerations for DB2 for Linux, UNIX,and Windows
    4. 5.4 Suggestions for Business Monitor
      1. 5.4.1 Improving concurrency by setting registry variables
      2. 5.4.2 Setting lock timeout properly
      3. 5.4.3 Limiting event XML to 32 KB where possible
      4. 5.4.4 Using materialized query tables
  10. Chapter 6. Migration considerations
    1. 6.1 Migration overview
    2. 6.2 Instance migration considerations
      1. 6.2.1 How instance migration works
      2. 6.2.2 Instance migration time estimation
      3. 6.2.3 Tuning for instance migration
      4. 6.2.4 Recommendations for instance migration
    3. 6.3 Version-to-version migration considerations
      1. 6.3.1 Overview of version-version migration
      2. 6.3.2 Time estimation for version-to-version migration
      3. 6.3.3 Tuning considerations for version-to-version migration
      4. 6.3.4 Recommendations for version-to-version migration
  11. Chapter 7. IT monitoring and tuning for performance testing and managing a production environment
    1. 7.1 Performance and load testing
      1. 7.1.1 Create a performance evaluation checklist
      2. 7.1.2 Establish clear performance objectives
      3. 7.1.3 Plan the performance evaluation early in the development cycle
      4. 7.1.4 Ensure performance results are representative
    2. 7.2 IT monitoring and tuning
      1. 7.2.1 Performance tuning methodology
      2. 7.2.2 Information required to diagnose and resolve performance issues
      3. 7.2.3 IT monitoring tools
      4. 7.2.4 Sample use cases
    3. 7.3 Purging Business Process Manager data stores
      1. 7.3.1 Repository data
      2. 7.3.2 Process Instance Data
      3. 7.3.3 Durable subscription messages
      4. 7.3.4 Document attachments
      5. 7.3.5 Dynamic groups
      6. 7.3.6 Shared business objects
      7. 7.3.7 Case properties
      8. 7.3.8 Performance Warehouse data
      9. 7.3.9 Business Monitor data
  12. Chapter 8. Initial configuration settings
    1. 8.1 Business Process Manager server settings
      1. 8.1.1 Three-tiered: BPEL business processes with web services and remote DB2
      2. 8.1.2 Three-tiered: Human Services with BPMN business processes
    2. 8.2 Mediation Flow Component settings
      1. 8.2.1 Mediation Flow Component common settings
      2. 8.2.2 Mediation Flow Component settings for web services
      3. 8.2.3 Mediation Flow Component settings for Java Message Service
      4. 8.2.4 DB2 settings for Java Message Service persistent
  13. Related publications
    1. IBM Redbooks
    2. Online resources
    3. How to get Redbooks
    4. Help from IBM
  14. Back cover
  15. IBM System x Reference Architecture for Hadoop: IBM InfoSphere BigInsights Reference Architecture
    1. Introduction
    2. Business problem and business value
    3. Reference architecture use
    4. Requirements
    5. InfoSphere BigInsights predefined configuration
    6. InfoSphere BigInsights HBase predefined configuration
    7. Deployment considerations
    8. Customizing the predefined configurations
    9. Predefined configuration bill of materials
    10. References
    11. The team who wrote this paper
    12. Now you can become a published author, too!
    13. Stay connected to IBM Redbooks
  16. Notices
    1. Trademarks