Reactive Messaging Client for Blocking JDBC Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microservices environments in cloud computing face challenges with performance issues due to blocking database interactions, which hinder the scalability and efficiency of reactive applications, particularly when using JDBC drivers.

Innovation Solution

A reactive messaging client is introduced to support non-blocking database interactions through a unified reactive API, incorporating a thread pool to manage thread locking and enabling features like metrics, tracing, and security, while supporting asynchronous messaging and reactive streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If JDBC drivers are used for database interactions in microservices, then database connectivity is achieved, but blocking operations occur which reduce performance and scalability

Engineering Contradiction:
ImproveperformanceVSAvoidblocking operations
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent replaces the traditional blocking JDBC driver mechanism with a reactive messaging client that uses non-blocking I/O operations. This substitution eliminates the mechanical blocking behavior by implementing an event-driven architecture where database interactions are handled through asynchronous message streams, allowing the system to maintain high productivity without blocking operations.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The reactive messaging client acts as an intermediary layer between the microservice and the database. This mediator translates traditional blocking database calls into non-blocking reactive streams, buffering and managing database interactions asynchronously. The intermediary handles the complexity of non-blocking operations while presenting a familiar API to developers, thus improving performance without sacrificing reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If traditional messaging approaches are used, then simplicity is maintained, but backpressure management and scalability are limited

Engineering Contradiction:
ImprovescalabilityVSAvoidmessaging infrastructure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The reactive messaging client provides multi-functionality by combining traditional messaging capabilities with reactive stream processing, backpressure management, and transaction support in a single unified API. This universal approach allows the system to scale efficiently while maintaining simplicity for developers who can use the same API patterns regardless of the underlying complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent changes the operational parameters of the messaging system by implementing reactive streams with configurable backpressure thresholds, async/await support, and transaction boundaries. These parameter changes enable the system to adapt to varying load conditions and scale dynamically while maintaining a simple developer experience through consistent API patterns.

Inventive Principle:
Principle #35Parameter changes

3Duration of action of moving object

If blocking database interactions are used, then implementation simplicity is maintained, but long-running transactions and asynchronous messaging are hindered

Engineering Contradiction:
Improvelong-running transactionsVSAvoidimplementation simplicity
Core Design Contradiction:
Duration of action of moving objectVSEase of operation

Solution Approach 1:

The reactive messaging client performs preliminary actions by establishing connection pools and buffering mechanisms before actual database operations occur. This preliminary setup enables long-running transactions to proceed asynchronously without blocking the main application flow, while the pre-configured infrastructure maintains implementation simplicity through automated resource management and familiar API patterns.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system ensures continuity of useful action by implementing non-blocking I/O operations that allow multiple database interactions to proceed concurrently. Long-running transactions are handled through reactive streams that maintain continuous data flow without blocking, while the unified API preserves ease of operation by using consistent syntax and patterns that developers can apply across different transaction types.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12474983B2System and method for reactive messaging client for use with a microservices environment
Publication Date: 2025.11.18 ORACLE INT CORP
  • US12474983B2 patent drawing
  • US12474983B2 patent drawing
  • US12474983B2 patent drawing

AI summary

In accordance with an embodiment, described herein is a system and method for enabling use of a reactive messaging client in microservice environments. A microservices (e.g., Helidon) environment provides a development framework that enables a software developer to create and use microservices. In accordance with an embodiment, the system can include a reactive messaging API, for use with long-running activities or other types of transactions associated with microservices, which enables the system to additionally support various reactive messaging features, such as, for example, transaction processing, asynchronous messaging, reactive streams, or the use of messaging channels, in a microservices environment.