Hello Fellow Learners,
In continuation to my hustle around retrying messages with a configurable wait time and max iteration for http calls.
I am quite aware of Retry patterns detailed in the official guidelines SAP Help : Apply the Retry Pattern, further the new inbuilt feature to retry http calls SAP Integration Suite – Inbuilt Retry option for HTTP Receiver Adapter fulfils the purpose completely but still I am willing to lay down this approach for the general usability, if the above approaches are not achievable due any reasons.
In December 2020 I raised this Question : Possibility to retry an SAP CPI Iflow request-reply step in case of http error in the community and received valuable suggestions to use JMS queues/datastore and as of current day we have SAP Event Mesh and SAP Advanced Event Mesh(with advanced features you can find here).
But somehow I felt sticking to the Iflow approach and strived to find logical design specific solution only.
Last year I implemented a simple solution, looking genuine and felt worth sharing. The intention of this solution is to retry the http trigger in case of 5XX http errors (temporary server related glitches like 500 etc.). However please note in the below example I have tried to achieve the result through another deployed iflow’s http endpoint, hence worked with 404 for demonstration purpose.
Problem Statement:
Resend the message through HTTP Receiver for a fixed number of retries after receiving Response code as 500 with a pause, say after 20 secs.
Design Solution:

Design Solution
Explanation:



—————————————————————————————————————————–


The implementation of this approach is likely to vary as per your individual use case.
Hence I would love to hear back from the community on this approach.