Asynchronous Workflow Manager for Cloud Media Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The Network-based Media Processing (NBMP) standard lacks asynchronous methods, leading to inefficiencies in media processing, particularly in cloud environments where immediate responses are not always feasible, affecting deployment speed and cost-effectiveness.
Innovation Solution
Implementing asynchronous processing capabilities in NBMP by allowing Workflow Managers to return HTTP status codes that indicate delayed responses, using the Retry-After header to schedule tasks for later execution, enabling asynchronous handling of requests such as creating, updating, and retrieving workflows and tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If synchronous processing is used in NBMP, then immediate response is provided, but deployment speed and cost-effectiveness deteriorate
Solution Approach 1:
The system performs preliminary actions by accepting and queueing media processing requests before actual processing occurs. The Workflow Manager receives requests and stores them in a database with associated metadata, allowing the system to prepare for processing without requiring immediate execution. This enables asynchronous handling where requests are fulfilled at optimal times rather than requiring synchronous immediate responses.
Solution Approach 2:
The patent introduces an intermediary mechanism (Workflow Manager with database storage) between the request submission and processing execution. The Workflow Manager acts as a mediator that accepts requests, stores them with metadata including priority and scheduling information, and manages their execution at appropriate times. This intermediary layer decouples the request submission from immediate processing, enabling asynchronous operation.
2Reliability
If synchronous processing is used in NBMP, then immediate response is provided, but processing cost increases
Solution Approach 1:
The system implements periodic action by processing media requests at scheduled intervals rather than immediately. The Workflow Manager can queue multiple requests and process them periodically based on system capacity, priority levels, and resource availability. This periodic processing approach reduces immediate computational overhead and energy consumption while still fulfilling all requests ultimately.
Solution Approach 2:
By performing preliminary queuing and metadata assignment before actual processing, the system prepares requests for efficient batch processing. The preliminary action of storing requests with associated metadata (priority, format requirements, output destinations) enables optimized resource utilization during actual processing, reducing overall energy consumption compared to synchronous individual processing.
3Adaptability or versatility
If asynchronous processing is implemented, then deployment flexibility is improved, but system complexity increases
Solution Approach 1:
The Workflow Manager is designed as a universal component that handles multiple functions: request acceptance, metadata assignment, priority-based queuing, scheduling, and processing coordination. This multi-functional design consolidates what could be multiple separate systems into a single versatile component, managing complexity while providing flexible asynchronous processing capabilities across different media types and processing requirements.
Solution Approach 2:
The system manages complexity through parameter changes by allowing dynamic adjustment of processing priorities, queue thresholds, and execution timing based on system state. The Workflow Manager can modify processing parameters (priority levels, scheduling intervals, resource allocation) without changing the fundamental system architecture, enabling flexible adaptation to different deployment scenarios while maintaining a relatively simple core structure.
Data Source
AI summary
A method, computer program, and computer system is provided for asynchronous Network-Based Media Processing (NBMP) request processing. A first function call corresponding to a CreateWorkflow request to an NBMP workflow manager is received. A hypertext transfer protocol (HTTP) status code and a delay value retrieved from a database are returned based on receiving the first function call, and the CreateWorkflow request is performed at a later time after the delay has elapsed, whereby a response to the request is performed asynchronously according to the retrieved delay value. A second function call corresponding to an UpdateWorkflow request to the NBMP workflow manager is received after performing the CreateWorkflow request, and results of performing the CreateWorkflow request are returned based on receiving the second function call, wherein a response to the CreateWorkflow request is provided asynchronously according to the retrieved delay value.


