Serverless Function Prioritization via SLA-Aware Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Serverless computing systems face challenges in specifying and guaranteeing Service-Level Agreements (SLAs) due to dynamic function changes and increased relational complexity, making it difficult to ensure consistent latency and quality of service.
Innovation Solution
An electronic apparatus and method that adjust the order of processing requests for functions by calculating remaining time based on allowed latency and function topology, prioritizing functions inversely proportional to their remaining time, and storing multiple versions of functions to execute previous compliant versions if current ones fail to meet SLA, while providing a user interface for selecting SLA grades.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If serverless computing dynamically manages allocation of machine resources, then resource utilization efficiency is improved, but Service-Level Agreement (SLA) guarantee capability deteriorates
Solution Approach 1:
The system performs preliminary actions by pre-calculating predicted execution times for functions based on topology information before requests arrive. When multiple requests are received, the system proactively determines execution priorities using the formula: priority = remaining time / predicted execution time, where remaining time is derived from SLA latency requirements. This preliminary prioritization ensures SLA compliance while maintaining dynamic resource allocation efficiency.
2Reliability
If the system executes functions based on dynamic priorities, then SLA compliance is improved, but system complexity increases
Solution Approach 1:
The system implements self-service by automatically calculating priorities and managing function execution orders without manual intervention. The processor autonomously computes predicted execution times, determines remaining time based on SLA requirements, calculates priority values using the formula priority = remaining time / predicted execution time, and sequences function executions accordingly. This automation maintains SLA compliance while avoiding the complexity of manual priority management.
3Adaptability or versatility
If function topology information is continuously updated, then adaptability to new functions is improved, but processing overhead increases
Solution Approach 1:
The system performs preliminary actions by pre-calculating and storing predicted execution times for functions when they are registered or updated in the topology. This allows the system to quickly determine priorities for newly added functions without performing complex real-time analysis. When topology changes occur, the system updates predicted execution times in advance, enabling rapid adaptation to new functions while minimizing processing overhead during request handling.
Data Source
Figure 1~3
Figure 4
Figure 5
AI summary
An electronic apparatus is provided. The electronic apparatus includes a communicator, a memory configured to store at least one instruction, and at least one processor configured to execute the at least one instruction. The at least one processor is configured to receive a plurality of requests to execute functions through the communicator, identify a service-level agreement (SLA) for each of a plurality of functions corresponding to the plurality of requests, determine priorities of the plurality of functions based on the identified SLAs, and execute the plurality of functions according to the determined priorities.