A lot of projects sooner or later encounter the challenge of processing huge data sets. You might want to choose a system where you receive the requests, but process them later on to avoid a system overload, eg. during the night. During this workshop we will teach you the principles of batch processing. We will try to explain the matter in a framework independant way, but we will concretize the theory with code samples using the Spring Batch Framework.
26. Best effort pattern with JMS
commit
start
commit
start
Chunk local
transaction
JMS local
transaction
timeline
Commits are synchronized
<bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="connectionFactory" />
<property name="defaultDestination" ref="orderQueue" />
<property name="receiveTimeout" value="100" />
<property name="sessionTransacted" value="true" />
</bean>
27. JMS failure will result in a duplicate message
commit
start
commit
start
Chunk local
transaction
JMS local
transaction
timeline
Commits are synchronized
failed