To resolve this problem, the messages should not be acknowledged on the server before the process finished running. If the message don’t acknowledge, process can re-receive the message again after it restart. So we modify the BW process like this:
But there is problem in this process, too. There is a JMS Queue Sender in this process. It sends the processed message to another Queue. If use the above process, JMS Queue Sender maybe invoke repeated. For example, the process crash after JMS Queue Sender and before Confirm, the message won’t be acknowledge in the server, when the process restart, this message will be reprocessed. So in the test record, maybe some repeated records will be found. The BW process should be modified more.
If the scenario is the customers’ product environment, it requires no data lost. How to configure the process? Use Transaction is a good idea. BW process is like this:
Here is only a very simple sample, the actual business environment will be more complex, those techniques should be used flexibility to keep the business system more reliability.
For training on TIBCO BusinessWorks mail us at firstname.lastname@example.org