US 12,001,897 B2
Resilient asynchronous request-reply solution for message-driven architectures
Bertram Beyer, Nussloch (DE); and Kevin Sieverding, Heidelberg (DE)
Assigned to SAP SE, Walldorf (DE)
Filed by SAP SE, Walldorf (DE)
Filed on May 2, 2022, as Appl. No. 17/734,928.
Prior Publication US 2023/0350739 A1, Nov. 2, 2023
Int. Cl. G06F 9/54 (2006.01)
CPC G06F 9/546 (2013.01) [G06F 9/547 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A system, comprising:
at least one data processor; and
at least one memory including instructions, which when executed by the at least one data processor, result in operations comprising:
initiating, in response to receiving a request from a client device, a process for executing the request using a first service and a second service;
persisting the request as a command in a database accessible to a first instance of the first service and a second instance of the first service, wherein the persisting is performed by a first thread of the first instance, and wherein the persisting comprises storing an association between the first thread and the command;
sending, by the first thread, the command from the first service to the second service;
receiving, by a second thread of the first instance and from the second service, a response to the command;
updating, by the second thread and in response to the receiving, the command in the database to include the response; and
providing, by the first thread and via the client device, the response to complete the process;
wherein in response to determining an error in the process, the response is provided after a refresh of an application at the client device and unblocking, after the refresh, the first thread of the first instance of the first service, wherein the unblocking is configured to allow the response to be provided to complete the process.