Offline processing is a feature of almost all IT projects of any size. Often there is a natural business reason to group items for processing, and this is where offline processing becomes a batch job. There are also legitimate technical reasons for batching items for processing to enhance performance and throughput. In both cases, the delivery of such systems presents challenges. This presentation explores the boundary between what is classified as a batch and what is not and shows that it can be blurred for business or technical reasons. The session concentrates on the challenges of increasing throughput in crucial high-volume business environments and explains how a range of patterns has emerged to help address those challenges. Then it takes a look at the Java™ programming language and available tooling to see how they provide a good platform for enabling efficient batch processing. It uses examples from real-life applications throughout.
Dr. David Syer is an experienced, delivery-focused architect and development manager. He has designed and built successful enterprise software solutions using Spring, and implemented them in major financial institutions worldwide. David is known for his clear and informative training style and has deep knowledge and experience with all aspects of real-life usage of the Spring framework. He enjoys creating business value from the application of simple principles to enterprise architecture. David joined SpringSource from a leading risk management software vendor where he worked closely with SpringSource on a number of projects. Recent publications have appeared in Balance Sheet, Operational Risk and Derivatives Technology.