Planes, trains, and automobiles need to be tuned up regularly to maintain optimum performance. Scales and clocks and other devices of measurement need to be regularly calibrated for precision. Musical instruments need to be kept in tune to, well - sound good. Your business processes are not very different. Performance, precision, and a comfortable aesthetic are all important measurements of a well-defined business topology.
In the same way you know when a car needs a tune up (slow or unresponsive acceleration, decreased performance, higher fuel consumption, and so on), or a guitar is out of tune (that Spinal Tap cover you’re playing sounds even worse than the original version), you’ll notice similar symptoms arise in your business processes. IBM Business Process Manager (BPM) Standard, IBM Business Process Manager Express, and IBM Business Process Manager Advanced V8.0 and IBM Business Monitor V8.0 provide an integrated development and runtime environment based on a key set of service-oriented architecture (SOA) and business process management technologies.Here, I’ll talk about some of the basic steps you can take to ensure your Business Process Manager processes are fully optimized.
The obvious solution for remedying an out of tune guitar is to tune it, using a digital tuner or tuning it against an in-tune guitar. But, if the strings are old, or if there are problems with the neck, or the frets are worn, the guitar won’t stay in tune for long. Similarly, you can tune your business processes using the methods that have been around for so long, but if the basic structure of your business environment is compromised by underlying issues, or is simply out of date, these methods are a temporary fix at best.As an example, consider the fact that 64-bit Java virtual machines (JVM) can accommodate essentially unlimited heap sizes (assuming there is sufficient physical memory to back the heap). Now consider how new frets in addition to new strings will make your lead solos dazzlingly stellar.
An old saying in music is that the song is only as good as the instrument. You may knock off riffs as good as Jimmy Page on a dime store imitation of a Telecaster, but your audience will still groan as loudly as the users of your business processes will when they experience delays and timeouts because of outdated equipment and technology. Choosing the appropriate hardware topology for your Business Process Management environment is the key for ensuring optimal performance. Keep the following tips in mind when designing your topology:
- Deploy the appropriate hardware for your hardware configuration.
- Deploy local modules in the same server.
- Consider using a best practices approach for clustering, instead of a single server configuration.
- Evaluate service providers and external interfaces to maximize throughput capacity.
Tuning just one or two strings on a guitar will not work - all of the strings must be tuned in order for it to be playable. The same is true for your business processes. As such, here’s a quick checklist of tuning tips that cover all areas of your IBM Business Process Manager (BPM) environment:
- Use a 64-bit JVM for all servers.
- Disable tracing, logging, and monitoring when possible.
- Ensure all of your databases are well-tuned.
- If security is required, use Application security, not Java2 security.
- Use an appropriate hardware configuration for performance measurement (not notebooks or desktops).
- If hardware virtualization is used, ensure that adequate processor, memory, and I/O resources are allocated to each virtual machine.
- Minimize network latency and ensure sufficient network bandwidth between all systems in the configuration.
- Do not run production servers in development mode or with a development profile.
- Tune external service providers and external interfaces to ensure that they do not cause a system bottleneck.
- Message-driven bean (MDB) activation specifications.
- Thread pool sizes.
- Settings of data sources for connection pool size and prepared statement cache size.
- Increase the maximum number of connections in the data pool to greater than or equal to the sum of all maximum thread pool sizes.
This list represents just the fundamental requirements for optimal performance. See IBM Business Process Manager V8.0 Performance Tuning and Best Practices, REDP-4935-00 for a complete list of tuning recommendations for all areas of your IBM Business Process Manager topology.
In conclusion, while a well-crafted and perfectly tuned guitar may not be all it takes for you to quit your day job, having perfectly tuned and optimized business processes will make your day job that much more enjoyable.