Chained Task Execution in On-Demand Code Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing on-demand code execution systems face inefficiencies and security concerns due to the need to pass intermediate results through a frontend system, which delays task execution and exposes sensitive data. Additionally, the lack of collocated virtual machine instances leads to reduced performance and security.
Innovation Solution
The system enables internal chaining of task execution by retaining status information and allowing virtual machine instances to directly pass results peer-to-peer, eliminating the need for intermediate result handling by the frontend. It also identifies and utilizes collocated virtual machine instances for task execution, enhancing efficiency and security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If intermediate results are passed through the frontend system, then task execution can be coordinated, but performance delays occur and security is compromised
Solution Approach 1:
The patent extracts the intermediate result handling function from the frontend system and implements it directly between virtual machine instances. The orchestrator system enables virtual machines to exchange intermediate results peer-to-peer, removing the mandatory routing through the frontend and thereby eliminating the associated performance delays while maintaining task coordination through the orchestrator's oversight.
Solution Approach 2:
The patent introduces an orchestrator system as a mediator that coordinates task execution and manages the peer-to-peer communication between virtual machines. The orchestrator assigns tasks, monitors execution status, and facilitates direct communication channels between virtual machines, enabling efficient intermediate result sharing without requiring frontend involvement while maintaining system-wide coordination.
2Reliability
If intermediate results are passed through the frontend system, then task coordination is maintained, but data security is exposed
Solution Approach 1:
The patent removes the frontend system from the intermediate result transmission path, extracting this function and implementing direct peer-to-peer communication between virtual machines. This eliminates the security vulnerability of exposing sensitive data through the frontend while the orchestrator maintains task coordination through alternative monitoring and assignment mechanisms.
Solution Approach 2:
The patent implements local peer-to-peer communication between virtual machines for intermediate result sharing, rather than using a centralized frontend approach. This localized direct communication ensures that sensitive data remains within the trusted virtual machine environment and is not exposed to the broader system through the frontend, while the orchestrator maintains global task coordination.
3Productivity
If virtual machine instances are not collocated, then resource utilization is maximized, but performance and security are reduced
Solution Approach 1:
The patent implements dynamic collocation of virtual machine instances based on task requirements and data locality considerations. The orchestrator can assign related tasks to collocated virtual machines when performance and security are priorities, while still maintaining overall resource utilization efficiency. This dynamic approach allows the system to adapt its deployment strategy based on specific task characteristics and system state.
4Productivity
If virtual machine instances are not collocated, then resource utilization is maximized, but data security is reduced
Solution Approach 1:
The patent implements dynamic collocation decisions that balance resource utilization with data security requirements. The orchestrator evaluates task characteristics, data sensitivity, and system state to determine whether related virtual machines should be collocated for enhanced security or distributed for optimal resource utilization. This dynamic strategy allows the system to adapt to varying security requirements while maintaining overall productivity.
Data Source
AI summary
Systems and methods are described for the chained execution of a set of code in an on-demand network code execution system. A user may provide a set of code for execution in the on-demand network code execution system and the system may determine that the set of code comprises multiple chained tasks. The system may provide the set of code to a first virtual machine instance for execution of a first task. The system may obtain an indication that the first task has been executed. The results of the execution of the first task may be sent to a second virtual machine instance, via a push or pull, for execution of a second task. Based on identifying that the first task has been executed, the system may instruct the second virtual machine instance to execute the second task.


