This advanced presentation will focus on best practices around creating high performance batch architectures with the Spring Batch container.
Effective batch architecture is an integration challenge. High performance involves not only having a highly performance batch container but also involves understanding the environmental tuning choices in the integration with databases, queues, and the operation platform.
Topics covered in this session include:
Performance Guidelines - understanding the role of the infrastructure components like databases and queues in the performance of batch, building a batch schedule capacity model, leveraging the DBA & Queue administrators as SMEs, etc.
Performance Monitoring - understanding the role of monitoring and runtime statistic for revealing weak spots in the batch architecture.
Performance Programming Hints for - Tips for keeping business logic highly performance such as minimizing object creation, set processing, avoiding excessive commits, allocating sufficient JVM memory to avoid GC, avoid unnecessary I/O, avoid doing things twice like collecting summaries during therun. Standard Java performance tips that apply to batch.
Performance Tools and Methodology - examining how to you plan the performance testing for batch moving from isolation to concurrent testing to scalability based on the capacity model. In addition, demonstrate the value of performance tools like Wily in identifying trouble spots.
We will show how Spring Batch is designed from the ground up to be highly performance but it doesn't come for free. Sound practices for performance from proper use of the execution platform, integration of external technologies, proper programming guidelines and proper performance test planning and measurement all are involved in delivering batch solutions that execute within allotted batch windows.