Case:
SAP RFC will pop IDOCs sequentially, and service needs to be executed sequentially after listener receives IDOC.
I created a SAP Adapter listener and notification, interface is working fine via Universal Messaging. But the thread number of the listener is only one.
My question:
If configure more than one threads for the SAP Adapter listener. Will the services be executed sequentially?
The sequence where the listener will kick start the flow service or publish to UM, will depend on which IDoc came in first through the listener. With multiple threads, it’s very unlikely you will be able to control the sequence where the IDoc came in.
You’ve a dependency on the SAP side when it delivered out the Idoc. If the gap between those are different 1 2 seconds, there might be a chance at the time arriving on IS SAP listener, they’ll not come in the expected sequence.
So it will very much depend on how you plan to implement your solution to process them. You can first have them publish to different queues in UM/JMS provider/broker, then develop your flow service to process according to your steps preferred.
If just using the listener and multiple threads, you cannot ensure the sequence executed sequentially if close proximity.
Thanks for your answer.
I am still considering how multi-threaded execute queue tasks in order, to improve interface performance and keep the order correct. but seems it is not a good solution.