Single RJVM Connection Management in Multitenant Servers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In a multitenant application server environment, existing technologies face challenges in efficiently supporting the T3 protocol, leading to increased resource usage and network traffic due to the need for multiple remote Java virtual machines (RJVMs) to manage connections across server instances.
Innovation Solution
A system and method that utilizes a single remote Java virtual machine (RJVM) per server instance to manage connections through a single server channel, associating each connection with a partition using a token and employing a smart stub for failed connection recovery, thereby reducing resource usage and improving deployment density.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple remote Java virtual machines (RJVMs) are used to manage connections across server instances, then connection management capability is improved, but resource usage and network traffic increase
Solution Approach 1:
The patent merges multiple RJVMs into a single RJVM that manages connections for multiple partitions. The single RJVM maintains multiple T3 connections to different server instances, eliminating the need for separate RJVMs per partition and thereby reducing resource usage while preserving connection management capability.
Solution Approach 2:
The single RJVM is designed to perform multiple functions by managing connections for different partitions simultaneously. It serves as a universal connection manager that can establish and maintain T3 connections to various server instances, replacing the specialized one-RJVM-per-partition approach.
2Reliability
If multiple remote Java virtual machines (RJVMs) are used to manage connections across server instances, then connection management capability is improved, but network traffic increases
Solution Approach 1:
By consolidating multiple RJVMs into one, the system reduces the number of network communication paths between server instances. The single RJVM manages all T3 connections through a unified approach, reducing redundant network traffic that would occur with multiple separate RJVMs establishing and maintaining individual connections.
3Quantity of substance
If a single remote Java virtual machine (RJVM) is used to manage connections, then resource usage is reduced, but connection management complexity increases
Solution Approach 1:
The patent segments the connection management responsibilities by associating each T3 connection with a specific partition using a token. This token-based segmentation allows the single RJVM to organize and manage multiple connections systematically, reducing the complexity burden through structured categorization.
Solution Approach 2:
The patent introduces a smart stub as an intermediary component that assists the single RJVM in managing connections. The smart stub handles connection recovery and management tasks, offloading complexity from the RJVM and enabling reliable connection management with reduced resource usage.
4Productivity
If a single remote Java virtual machine (RJVM) is used per server instance, then deployment density is improved, but connection recovery complexity increases
Solution Approach 1:
The smart stub serves as a specialized intermediary that handles connection recovery operations. When a T3 connection fails, the smart stub manages the recovery process by establishing new connections to alternative server instances, thereby enabling high deployment density while containing recovery complexity in a dedicated component.
Solution Approach 2:
The system prepares multiple server instances and their associated T3 connections in advance. When a connection failure occurs, the preliminary configuration allows for rapid recovery by having alternative connections pre-established and ready, thus improving deployment density while simplifying the recovery process through pre-prepared infrastructure.
Data Source
AI summary
In accordance with an embodiment, described herein is a system and method for supporting an object-based stateful protocol (for example, T3 protocol) in a multitenant application server environment. The system includes a domain with a plurality of server instances, and a plurality of partitions thereon, wherein two or more partitions can spread across a first server instance and a second server instance of the plurality of server instances. Each of the first and second server instances can include a single remote java virtual machine (RJVM) that manages connections established through a single server channel on that server instance using the object-based stateful protocol. The application server instance initiating the connections can associate each connection with a particular partition using a token, and use a smart stub to recover a failed connection. A standalone Java application can similarly initiate connections to an application server instance.


