Tenant-Aware Behavior Injection for Sandboxed Metadata Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-tenant environments, a tenant's custom code execution can adversely impact other tenants and the host system by consuming excessive resources, leading to performance degradation.
Innovation Solution
A protected event execution environment (sandbox) is implemented to isolate the execution of tenant-specific code, ensuring it does not affect other tenants or the host system, using a multitenant computing platform with an event manager that retrieves domain object information and executes instructions with specific restrictions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If custom code is executed in a multitenant environment, then tenant-specific functionality and adaptability are improved, but system stability and other tenants' performance deteriorate due to resource overconsumption
Solution Approach 1:
The system segments the execution environment by creating isolated sandboxes for each tenant's custom code. The event manager generates a protected event execution environment (sandbox) that physically separates tenant code from the host system and other tenants, allowing each tenant to execute custom functionality without affecting others. This segmentation resolves the contradiction by enabling adaptability through custom code while maintaining stability through isolation.
Solution Approach 2:
The event manager acts as an intermediary between tenants and the multitenant platform. It retrieves domain object information from the tenant database, generates appropriate sandboxes, and manages the execution of custom code. This intermediary layer controls and monitors resource usage, preventing any single tenant from overconsuming resources and thereby maintaining system stability while still allowing custom functionality to execute.
2Ease of operation
If custom code is allowed to execute without restrictions, then tenant operational flexibility is improved, but resource consumption increases causing performance degradation
Solution Approach 1:
The system dynamically adjusts execution constraints based on tenant needs and system conditions. The event manager monitors resource usage during sandbox execution and can impose restrictions when thresholds are approached. This dynamic approach allows tenants operational flexibility within safe boundaries while preventing resource overconsumption that would degrade overall system performance.
Data Source
AI summary
A system in which an event manager executes a multitenant computing platform. The event manager obtains a first domain-specific event indicating a user request to perform operations associated with a particular tenant's domain object. Information for the domain object associated with the domain-specific event is retrieved from a tenant database, the information including a domain object definition and instructions defining its behaviors. A protected event execution environment (sandbox) is generated on the multitenant computing platform implementing restrictions on execution of the domain object's behavior instructions. The restrictions are specific to the combination of the user and the domain object. Execution of the instructions is initiated in the protected event execution environment. A second domain-specific event which indicates a request to modify the domain object information is then obtained, and the modification of the domain object information is initiated in the protected event execution environment.


