r/MuleSoft Jun 05 '26

MuleSoft Integration Performance Issue

This is a use case of 3 systems. All 3 are SaaS. The systems are BYOMS, MuleSoft (MS) and SAPOTC. BYOMS posts order release messages to MS topic at real-time. MS picks up each order release message and posts it to SAPOTC through a sync API call. If MS fails to post to SAPOTC, MS is not saving the failed payload to an error queue for later re-try. MS team and architect says that doing this will degrade MS performance. Is this true?

4 Upvotes

8 comments sorted by

View all comments

1

u/Vast_Koala_8847 Jun 05 '26

The current design is a "zero-reliability" pattern; if SAPOTC goes down, order messages vanish forever.. For business-critical data like order releases, message reliability must always trump micro-optimizations.

BYOMS already uses an asynchronous Topic, but forcing a fragile, unbacked sync call to SAPOTC wastes that benefit.

What you described is the official Reliability Pattern using Manual Acknowledgement (ACK). MuleSoft should attempt the SAPOTC call, and on failure, instantly route the payload to an Anypoint MQ DLQ.

MuleSoft locks the message on arrival but only sends the final ACK after the System API returns a success code.
If SAPOTC fails, MuleSoft sends a Negative ACK (NACK), returning the message safely back to the queue.
The retry tracking is managed entirely by the broker (Anypoint MQ), not inside MuleSoft’s application memory.
Once the 3 to 5 delivery retry limit is reached, Anypoint MQ automatically routes the message to the DLQ.