Tenant-Aware Content Metadata Services With Sandboxed Behavior Injection
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
Implement a protected event execution environment (sandbox) that isolates tenant-specific code execution, using an event manager to manage domain objects and execute custom code within this environment, ensuring it does not affect other tenants or the host system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If custom code is executed in a multi-tenant environment, then tenant-specific functionality is enhanced, but system stability and other tenants' performance deteriorate due to resource consumption
Solution Approach 1:
The system segments the multi-tenant environment into isolated execution contexts (sandboxes) for each tenant. Each tenant's custom code executes in a separate sandbox that divides system resources, preventing any single tenant from affecting others. This segmentation resolves the contradiction by allowing diverse tenant functionality while maintaining system stability through isolation.
Solution Approach 2:
The patent introduces an intermediary layer (the sandboxing mechanism) between tenant custom code and the host system. This intermediary controls and limits resource access, mediating between the need for tenant-specific functionality and the requirement for system stability. The sandbox acts as a buffer that prevents direct impact on other tenants and the host.
2Ease of operation
If custom code is executed without verification, then tenant operational flexibility is improved, but harmful effects on other tenants increase
Solution Approach 1:
The system applies preliminary anti-action by pre-establishing sandbox constraints before executing any tenant custom code. Rather than verifying code content (which would reduce flexibility), the system preemptively configures execution environments with built-in resource limits and isolation policies. This prevents harmful effects before they can occur while maintaining operational flexibility.
Solution Approach 2:
The patent converts the potential harm of unverified custom code into a benefit by using the sandboxing mechanism. The same execution freedom that could cause harm is channeled through controlled environments where resource consumption is limited. The unrestricted operational flexibility becomes beneficial because the sandbox transforms potential negative impacts into manageable, isolated events that don't affect the overall system.
3Power
If resource-intensive operations are permitted, then tenant processing capability is enhanced, but overall system performance deteriorates
Solution Approach 1:
The system applies local quality by allocating different resource capacities to different tenant sandboxes based on their specific needs and agreements. Each sandbox has customized resource limits (CPU, memory, I/O) tailored to the tenant's processing requirements. This allows high processing capability for tenants who need it while preventing any single tenant from monopolizing system resources, thus maintaining overall productivity.
Solution Approach 2:
The patent uses parameter changes by dynamically adjusting resource allocation parameters within sandboxes. The system can modify execution time limits, memory constraints, and CPU quotas for each tenant based on current system conditions and tenant priorities. This enables flexible control where resource-intensive operations are permitted up to defined thresholds, beyond which parameters change to protect 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.


