Java Virtual Machine Integrated Transaction Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems lack the capability to efficiently process high-volume, real-time transactions in a cost-effective and flexible manner, especially for global and distributed environments, as they often require proprietary architectures and complex integration of technologies to achieve transactional features like atomicity, consistency, isolation, and durability (ACID properties).
Innovation Solution
A JAVA Virtual Machine (JVM) is enhanced to provide transactional features natively, allowing JAVA code to execute fully transactional applications without the need for external transaction managers or databases, by integrating transactional processing platform services into the JVM, enabling distributed transaction management and high availability through shared memory persistence and replication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If proprietary transaction processing systems are used, then ACID properties and transactional features are achieved, but system complexity and cost increase
Solution Approach 1:
The patent merges the transaction management functionality directly into the Java Virtual Machine by integrating a transaction manager that can intercept and control Java method calls. This consolidation eliminates the need for separate proprietary transaction processing systems while maintaining ACID properties through the JVM's internal transaction coordination mechanisms.
Solution Approach 2:
The JVM is enhanced to provide universal transactional support for all Java applications through the integrated transaction manager. The system can handle both local and distributed transactions across multiple data sources and applications, making the transactional capability universally applicable without requiring application-specific proprietary systems.
2Reliability
If external transaction managers are integrated, then transactional features are provided, but integration complexity increases
Solution Approach 1:
Rather than integrating external transaction managers, the patent combines the transaction management functionality directly into the JVM architecture. The transaction manager becomes an intrinsic part of the JVM, allowing it to intercept and control Java method calls without requiring complex external integrations or adapters.
3Ease of operation
If standard JAVA programming models are used, then development ease is maintained, but native transactional support is lacking
Solution Approach 1:
The enhanced JVM provides self-service transactional capabilities by automatically managing transactions through its integrated transaction manager. Java applications can leverage standard programming models while the JVM itself handles transaction coordination, locking, and recovery mechanisms, eliminating the need for applications to implement complex transactional logic manually.
4Productivity
If proprietary systems are deployed, then high-volume real-time processing is achieved, but cost per transaction increases
Solution Approach 1:
The enhanced JVM provides universal transactional support that can handle high-volume real-time processing for any Java application. By making transactional capabilities universally available within the standard Java platform, the system eliminates the need for expensive proprietary transaction processing systems while maintaining the ability to process high volumes of transactions efficiently.
Data Source
AI summary
A computing system and method is a specification of user-defined business logic is provided as JAVA program instructions (or another programming language) which does not natively provide for specification of full transactionality, to accomplish a fully transactional application, including executed managed objects. The managed objects are persisted in a shared memory of the computing system, such that a scope of the objects is global to the fully transactional application. Furthermore, a catalog of the managed object is maintained. A query interface is provided for querying the managed objects, in order to receive a query from an application, to process the catalog, and to provide a result indication of at least one of the managed objects back to the querying application. Thus, for example, the application may process the managed objects that are indicated in the query result.


