# US 11,121,945 B2 · Methods, systems, and computer readable media for request response processing

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

- Number: US 11,121,945 B2
- Document ID: US11121945B2
- Status: Granted
- Kind: B2
- Application number: 16/740,070
- Filed: 2020-01-10
- Published: 2021-07-15
- Granted: 2021-09-14
- Earliest claimed: 2020-01-10
- Assignees: Oracle International Corporation
- Applicants: Oracle International Corporation
- Inventors: Debdulal Dey
- Web page: https://patentgrep.com/patent/US11121945B2

## CPC

- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- H04L 41/5093: {wherein the managed service relates to messaging or chat services}
- H04L 67/1078: {Resource delivery mechanisms}
- H04L 67/306: User profiles
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods, systems, and computer readable media for request response processing. A method includes establishing a request topic and a response topic for distributing messages between clients and services executing on a distributed computing system. The method includes posting, in the request topic, request messages from the clients, each request message including a unique client identifier, such that the services consume the request messages from the request topic. The method includes posting, in the response topic, response messages from the services responsive to the request messages. The services post the response messages to response partitions of the response topic using the unique client identifiers. The clients consume the response messages using the unique client identifiers to ensure that each client consumes a respective responsive message responsive to a respective request message from the client.

## Claims

### Claim 1

A system for request response processing, the system comprising:
a distributed computing system comprising a plurality of processors; and
a central messaging bus implemented on the distributed computing system, wherein the central messaging bus is configured for:
establishing a request topic and a response topic for distributing a plurality of messages between a plurality of clients and a plurality of services executing on the distributed computing system;
posting, in the request topic, a plurality of request messages from the plurality of clients, each client being associated with one or more unique client identifiers, each request message including one of the one or more unique client identifiers for the respective client posting the request message, wherein the plurality of services consume the request messages from the request topic; and
posting, in the response topic, a plurality of response messages from the plurality of services responsive to the request messages, wherein the plurality of services post the response messages to a plurality of response partitions of the response topic using the unique client identifiers, and wherein the plurality of clients consume the response messages using the unique client identifiers to ensure that each client consumes a respective responsive message responsive to a respective request message from the client;
wherein, for each client of the plurality of clients, the client is configured for determining each of the unique client identifiers for the client based on a hash of an account identifier and a total number of partitions of the request topic.

### Claim 2 (depends on 1)

The system of claim 1, wherein the request topic is partitioned based on the unique client identifiers of the plurality clients.

### Claim 3 (depends on 2)

The system of claim 2, wherein the central messaging bus is configured for randomly assigning each service of the plurality of services to a partition of the request topic.

### Claim 4 (depends on 1)

The system of claim 1, wherein each client of the plurality of clients comprises a network gateway in a telecommunications network.

### Claim 5 (depends on 1)

The system of claim 1, wherein each service of the plurality of services comprises a charging service configured for charging and providing credit control services for a plurality of subscribers of a telecommunications network.

### Claim 6 (depends on 1)

The system of claim 1, wherein the central messaging bus is configured for determining a number of unique client identifiers for a client of the plurality of clients based on a volume of transactions for the client or a projected volume of transactions for the client.

### Claim 7 (depends on 1)

The system of claim 1, wherein, at each client of the plurality of clients, the client is configured for assigning a respective unique client identifier of the one or more unique client identifiers for the client to each request message of the client in a round robin process to evenly distribute the request messages of the client across the one or more unique client identifiers.

### Claim 8 (depends on 1)

The system of claim 1, wherein the central messaging bus is configured for, in response to determining an increase in a volume of client transactions from the plurality of clients, increasing a total number of partitions for the request topic.

### Claim 9 (depends on 1)

The system of claim 1, wherein, at each service of the plurality of services, the service is configured for sequentially processing each request message consumed from the response topic.

### Claim 10

A method for request response processing, the method comprising:
at a central messaging bus implemented on a distributed computing system comprising a plurality of processors:
establishing a request topic and a response topic for distributing a plurality of messages between a plurality of clients and a plurality of services executing on the distributed computing system;
posting, in the request topic, a plurality of request messages from the plurality of clients, each client being associated with one or more unique client identifiers, each request message including one of the one or more unique client identifiers for the respective client posting the request message, wherein the plurality of services consume the request messages from the request topic; and
posting, in the response topic, a plurality of response messages from the plurality of services responsive to the request messages, wherein the plurality of services post the response messages to a plurality of response partitions of the response topic using the unique client identifiers, and wherein the plurality of clients consume the response messages using the unique client identifiers to ensure that each client consumes a respective responsive message responsive to a respective request message from the client;
for each client of the plurality of clients, determining each unique client identifier for the client based on a hash of an account identifier and a total number of partitions of the request topic.

### Claim 11 (depends on 10)

The method of claim 10, wherein the request topic is partitioned based on the unique client identifiers of the plurality clients.

### Claim 12 (depends on 11)

The method of claim 11, comprising randomly assigning each service of the plurality of services to a partition of the request topic.

### Claim 13 (depends on 10)

The method of claim 10, wherein each client of the plurality of clients comprises a network gateway in a telecommunications network.

### Claim 14 (depends on 10)

The method of claim 10, wherein each service of the plurality of services comprises a charging service configured for charging and providing credit control services for a plurality of subscribers of a telecommunications network.

### Claim 15 (depends on 10)

The method of claim 10, comprising determining a number of unique client identifiers for a client of the plurality of clients based on a volume of transactions for the client or a projected volume of transactions for the client.

### Claim 16 (depends on 10)

The method of claim 10, comprising, at each client of the plurality of clients, assigning a respective unique client identifier of the one or more unique client identifiers for the client to each request message of the client in a round robin process to evenly distribute the request messages of the client across the one or more unique client identifiers.

### Claim 17 (depends on 10)

The method of claim 10, comprising, in response to determining an increase in a volume of client transactions from the plurality of clients, increasing a total number of partitions for the request topic.

### Claim 18

A non-transitory computer readable medium comprising computer executable instructions embodied in the non-transitory computer readable medium that when executed by at least one processor of at least one computer cause the at least one computer to perform steps comprising:
at a central messaging bus implemented on a distributed computing system comprising a plurality of processors:
establishing a request topic and a response topic for distributing a plurality of messages between a plurality of clients and a plurality of services executing on the distributed computing system;
posting, in the request topic, a plurality of request messages from the plurality of clients, each client being associated with one or more unique client identifiers, each request message including one of the one or more unique client identifiers for the respective client posting the request message, wherein the plurality of services consume the request messages from the request topic; and
posting, in the response topic, a plurality of response messages from the plurality of services responsive to the request messages, wherein the plurality of services post the response messages to a plurality of response partitions of the response topic using the unique client identifiers, and wherein the plurality of clients consume the response messages using the unique client identifiers to ensure that each client consumes a respective responsive message responsive to a respective request message from the client; and
for each client of the plurality of clients, determining each unique client identifier for the client based on a hash of an account identifier and a total number of partitions of the request topic.
