Plugin Execution Stability Management via Dynamic Process Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing plugin execution modes either cause core application instability due to shared process execution or resource overconsumption in separate processes, making it difficult to locate and manage plugin issues, leading to degraded user experience and performance.

Innovation Solution

A system that dynamically determines plugin stability levels based on abnormal frequency and adjusts execution modes, using shared or independent loader processes to manage plugin execution, ensuring stable core application performance and resource efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the plugin runs in the same process as the core application, then interaction efficiency is improved, but system stability deteriorates due to plugin bugs causing core application crashes

Engineering Contradiction:
Improveinteraction efficiencyVSAvoidsystem stability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system segments plugin execution into different process contexts based on stability levels. Stable plugins execute in the core application process for high efficiency, while unstable plugins execute in separate isolated processes to prevent system crashes. This segmentation resolves the contradiction by allowing high interaction efficiency for reliable plugins while isolating unstable ones to protect system stability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adjusts the execution mode of plugins based on their measured stability levels. Plugins can transition between execution contexts (same process or separate process) as their stability characteristics change over time. This dynamic adaptation allows the system to optimize interaction efficiency while maintaining stability protection, resolving the fixed trade-off between speed and reliability.

Inventive Principle:
Principle #15Dynamics

2Reliability

If each plugin occupies a separate process, then system stability is improved, but resource consumption increases leading to degraded performance

Engineering Contradiction:
Improvesystem stabilityVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system applies different execution isolation levels to different plugins based on their individual stability characteristics. Rather than isolating all plugins in separate processes, only unstable plugins receive this treatment while stable plugins share the core application process. This local differentiation maintains system stability for problematic plugins while conserving resources for reliable ones, resolving the contradiction between stability and resource consumption.

Inventive Principle:
Principle #3Local quality

3Use of energy by moving object

If all plugins run in a specific shared process, then resource consumption is reduced, but reliability deteriorates as one unstable plugin can affect all other plugins

Engineering Contradiction:
Improveresource consumptionVSAvoidplugin availability
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The system segments plugins into different execution groups based on stability levels. Unstable plugins are isolated in their own separate processes while stable plugins can share the core application process. This segmentation prevents contamination between plugins - an unstable plugin cannot affect others - while still allowing resource-efficient sharing for stable plugins, resolving the contradiction between resource consumption and reliability.

Inventive Principle:
Principle #1Segmentation

4Device complexity

If plugins are executed without stability classification, then device complexity is reduced, but difficulty of detecting and measuring problems increases

Engineering Contradiction:
Improveexecution management complexityVSAvoidproblem localization difficulty
Core Design Contradiction:
Device complexityVSDifficulty of detecting and measuring

Solution Approach 1:

The system introduces visual or categorical indicators (analogous to color changes) to mark plugins based on their stability levels. Stable plugins are marked differently from unstable ones, making it immediately apparent which plugins require special execution handling. This classification system simplifies execution management while simultaneously improving problem detection and localization, as issues can be quickly traced to plugins with known stability characteristics.

Inventive Principle:
Principle #32Color changes

Data Source

PatentEP2414932B1Execution of a plugin according to plugin stability level
Publication Date: 2021.10.13 ALIBABA GROUP HOLDING LTD
  • EP2414932B1 patent drawingFigure 1A
  • EP2414932B1 patent drawingFigure 1B
  • EP2414932B1 patent drawingFigure 2

AI summary

Executing a plugin includes obtaining a stability level of the plugin to be executed, determining a plugin execution mode based at least in part on the stability level, and executing the plugin according to the plugin execution mode determined. The plugin execution mode is selected from a plurality of available plugin execution modes.