# US 12,602,402 B2 · Synchronous processing systems and methods with in-memory database

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,602,402 B2
- Document ID: US12602402B2
- Status: Granted
- Kind: B2
- Application number: 17/829,039
- Filed: 2022-05-31
- Published: 2023-12-21
- Granted: 2026-04-14
- Earliest claimed: 2022-05-31
- Assignees: Open Text Corporation
- Applicants: Open Text Corporation
- Inventors: Gregory Pekofsky; Jonathan Carroll
- Web page: https://patentgrep.com/patent/US12602402B2

## CPC

- G06F 16/275: {Synchronous replication}
- G06F 16/23: Updating
- G06F 16/25: Integrating or interfacing systems involving database management systems
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An orchestration platform leverages an in-memory database for guaranteed synchronous processing of requests from origin devices. The in-memory database is created on a per-transaction basis and localized to a synchronous orchestration engine, which is a part of an orchestration platform. The in-memory database is serialized and stored in memory. To update the in-memory database, the in-memory database is deserialized and one or more database operations can be performed on the in-memory database. The updated in-memory database is communicated to a return to caller service which deserializes and extracts data from the updated in-memory database. The data is stored in a disk-based database that is accessible by an asynchronous orchestration engine. At this point, the updated in-memory database no longer exists.

## Claims

### Claim 1

A method of performing guaranteed synchronous processing, the method comprising:
receiving, at an orchestration platform, a request from an origin device;
creating an in-memory database per the received request for guaranteed synchronous processing of the request from the origin device, the creating performed by a synchronous orchestration engine executing on a server machine of the orchestration platform;
serializing and storing, by the synchronous orchestration engine, the in-memory database in memory of the server machine;
communicating, by the synchronous orchestration engine, the in-memory database to a synchronous orchestration service, wherein the synchronous orchestration service, in synchronous with the request from the origin device, deserializes the in-memory database, performs a database operation on the in-memory database to produce an updated in-memory database, serializes the updated in-memory database, and communicates the updated in-memory database to the synchronous orchestration engine;
receiving, by the synchronous orchestration engine from the synchronous orchestration service, the updated in-memory database; and
communicating, by the synchronous orchestration engine, the updated in-memory database to a return to caller service, wherein the return to caller service is operable to deserialize the updated in-memory database, extract data from the updated in-memory database, perform guaranteed synchronous processing of the request from the origin device by storing the data extracted from the updated in-memory database in a disk-based database, and return a response to the synchronous orchestration engine for responding to the request from the origin device in synchronous with the request from the origin device, and wherein the updated in-memory database is not returned to the synchronous orchestration engine or kept in memory.

### Claim 2 (depends on 1)

The method according to claim 1, wherein the return to caller service is further operable to send the data to an asynchronous orchestration engine.

### Claim 3 (depends on 1)

The method according to claim 1, wherein the request contains data specific to the origin device, an actor associated with the origin device, or an application running on the origin device.

### Claim 4 (depends on 3)

The method according to claim 3, wherein the in-memory database is created using the data specific to the origin device, the actor associated with the origin device, or the application running on the origin device.

### Claim 5 (depends on 1)

The method according to claim 1, wherein the synchronous orchestration service is a part of the synchronous orchestration engine, wherein the in-memory database is localized to the synchronous orchestration engine, and wherein the synchronous orchestration engine is a part of an orchestration component of an electronic information exchange platform.

### Claim 6 (depends on 1)

The method according to claim 1, wherein the request is received from the origin device by an ingress router and routed to the synchronous orchestration engine by the ingress router based on customer metadata contained in the request.

### Claim 7 (depends on 1)

The method according to claim 1, wherein the in-memory database is one of a plurality of in-memory databases, wherein the synchronous orchestration engine is one of a plurality of synchronous orchestration engines, and wherein each of the plurality of in-memory databases is created by one of the plurality of synchronous orchestration engines on a per-transaction basis.

### Claim 8

A system for performing guaranteed synchronous processing, the system comprising:
a processor;
a non-transitory computer-readable medium; and
instructions stored on the non-transitory computer-readable medium and translatable by the processor for:
receiving, at an orchestration platform, a request from an origin device;
creating an in-memory database per the received request for guaranteed synchronous processing of the request from the origin device;
serializing and storing the in-memory database in memory of the system;
communicating the in-memory database to a synchronous orchestration service, wherein the synchronous orchestration service, in synchronous with the request from the origin device, deserializes the in-memory database, performs a database operation on the in-memory database to produce an updated in-memory database, and serializes the updated in-memory database;
receiving, from the synchronous orchestration service, the updated in-memory database; and
communicating the updated in-memory database to a return to caller service, wherein the return to caller service is operable to deserialize the updated in-memory database, extract data from the updated in-memory database, perform guaranteed synchronous processing of the request from the origin device by storing the data extracted from the updated in-memory database in a disk-based database, and return a response for responding to the request from the origin device in synchronous with the request from the origin device, and wherein the updated in-memory database is not returned to an synchronous orchestration engine of the orchestration platform or kept in memory.

### Claim 9 (depends on 8)

The system of claim 8, wherein the return to caller service is further operable to send the data to an asynchronous orchestration engine.

### Claim 10 (depends on 8)

The system of claim 8, wherein the request contains data specific to the origin device, an actor associated with the origin device, or an application running on the origin device.

### Claim 11 (depends on 10)

The system of claim 10, wherein the in-memory database is created using the data specific to the origin device, the actor associated with the origin device, or the application running on the origin device.

### Claim 12 (depends on 8)

The system of claim 8, wherein the synchronous orchestration service is a part of an orchestration component of an electronic information exchange platform and wherein the in-memory database is localized to the orchestration component.

### Claim 13 (depends on 8)

The system of claim 8, wherein the request is received from the origin device by an ingress router and routed to the synchronous orchestration engine by the ingress router based on customer metadata contained in the request, and wherein the in-memory database is localized to the synchronous orchestration engine.

### Claim 14 (depends on 13)

The system of claim 13, wherein the in-memory database is one of a plurality of in-memory databases, wherein the synchronous orchestration engine is one of a plurality of synchronous orchestration engines, and wherein each of the plurality of in-memory databases is localized to one of the plurality of synchronous orchestration engines.

### Claim 15

A computer program product for performing guaranteed synchronous processing, the computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a processor of a computer system for:
receiving, at an orchestration platform, a request from an origin device;
creating an in-memory database per the received request for guaranteed synchronous processing of the request from the origin device;
serializing and storing the in-memory database in memory of the computer system;
communicating the in-memory database to a synchronous orchestration service, wherein the synchronous orchestration service, in synchronous with the request from the origin device, deserializes the in-memory database, performs a database operation on the in-memory database to produce an updated in-memory database, and serializes the updated in-memory database;
receiving, from the synchronous orchestration service, the updated in-memory database; and
communicating the updated in-memory database to a return to caller service, wherein the return to caller service is operable to deserialize the updated in-memory database, extract data from the updated in-memory database, perform guaranteed synchronous processing of the request from the origin device by storing the data extracted from the updated in-memory database in a disk-based database, and return a response for responding to the request from the origin device in synchronous with the request from the origin device, and wherein the updated in-memory database is not returned to an synchronous orchestration engine of the orchestration platform or kept in memory.

### Claim 16 (depends on 15)

The computer program product of claim 15, wherein the return to caller service is further operable to send the data to an asynchronous orchestration engine.

### Claim 17 (depends on 15)

The computer program product of claim 15, wherein the request contains data specific to the origin device, an actor associated with the origin device, or an application running on the origin device and wherein the in-memory database is created using the data specific to the origin device, the actor associated with the origin device, or the application running on the origin device.

### Claim 18 (depends on 15)

The computer program product of claim 15, wherein the synchronous orchestration service is a part of an orchestration component of an electronic information exchange platform and wherein the in-memory database is localized to the orchestration component.

### Claim 19 (depends on 15)

The computer program product of claim 15, wherein the request is received from the origin device by an ingress router and routed to the synchronous orchestration engine by the ingress router based on customer metadata contained in the request, and wherein the in-memory database is localized to the synchronous orchestration engine.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein the in-memory database is one of a plurality of in-memory databases, wherein the synchronous orchestration engine is one of a plurality of synchronous orchestration engines, and wherein each of the plurality of in-memory databases is localized to one of the plurality of synchronous orchestration engines.
