Partial Control Tree Optimization for Portal Rendering Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large portals with numerous controls face performance and scalability issues due to the overhead of creating a new control tree and running control lifecycle stages, leading to increased CPU time and reduced throughput as the size of the control tree grows exponentially with the number of controls.

Innovation Solution

Implementing partial control tree creation and scalable control tree state management, where only active controls are built upon user request, and optimizing control tree state by minimizing state replication and storage, along with control tree compression to reduce memory usage and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a complete control tree is created for all controls on a portal, then all controls can be fully rendered and accessed, but the processing overhead and CPU time increase exponentially with the number of controls

Engineering Contradiction:
Improveportal functionalityVSAvoidportal throughput
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent divides the complete control tree into multiple partial control trees, each representing a subset of controls that are actively used. Instead of creating one large control tree containing all controls, the system creates several smaller partial control trees that can be independently processed and rendered, thereby reducing the processing overhead while maintaining access to all necessary controls.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial control tree creation where only the necessary subset of controls is instantiated and processed for each portal rendering operation. Rather than creating excessive controls that are not immediately needed, the system dynamically determines which controls should be included in the partial control tree based on the current portal state and user context, reducing unnecessary processing.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If control lifecycle stages are run on every control in the tree, then all controls are properly initialized and rendered, but the time required to complete portal rendering increases with tree size

Engineering Contradiction:
Improvecontrol initializationVSAvoidrendering time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the control lifecycle processing by applying it only to controls included in the partial control tree. Each partial control tree undergoes the necessary lifecycle stages (init, load, preRender, render, destroy) independently and efficiently, avoiding the time penalty of processing the entire control tree while ensuring proper initialization of all rendered controls.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial lifecycle processing by skipping controls that are not included in the current partial control tree. This selective approach ensures that only necessary controls undergo initialization and rendering processes, significantly reducing rendering time while maintaining reliability for the controls that are actually displayed.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If the control tree is rebuilt on every user request, then the portal can serve dynamic content, but the CPU overhead and memory usage increase significantly

Engineering Contradiction:
Improvedynamic content deliveryVSAvoidCPU time
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent implements control tree caching where partial control trees are created and cached in advance based on predicted user navigation patterns and portal state. When a user request comes in, the system can retrieve pre-computed partial control trees from the cache rather than rebuilding them from scratch, significantly reducing CPU overhead while maintaining the ability to serve dynamic content through selective caching strategies.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies different qualities of control tree creation to different parts of the portal based on local needs. Frequently accessed controls and critical path controls are included in cached partial control trees with full processing, while less critical controls are either excluded or processed with reduced lifecycle stages. This local quality approach optimizes CPU usage by focusing computational resources on the most important controls.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7747677B2System and method for control tree optimization
Publication Date: 2010.06.29 ORACLE INT CORP
  • US7747677B2 patent drawing
  • US7747677B2 patent drawing
  • US7747677B2 patent drawing

AI summary

The present invention creates a partial control tree rather than a full control tree of a portal upon user's rendering request, wherein the partial control tree may contain only active controls in the portal while is still sufficient for rendering the portal. Such an approach improves performance and scalability characteristics of the portal, which depends on the size of the portal, i.e., number of controls on the portal. This description is not intended to be a complete description of, or limit the scope of, the invention. Other features, aspects, and objects of the invention can be obtained from a review of the specification, the figures, and the claims.