External REST API Task Queue for Application Notification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional distributed application execution systems interfere with internal applications' real-time behavior by notifying them of external tasks in real-time, leading to resource dedication issues.
Innovation Solution
Implementing an external REST API for task queues that allows external applications to append tasks to internal application queues non-real-time, using access control lists and authorization standards like oAuth, enabling tasks to be processed by internal applications during convenient times without interfering with real-time requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If real-time notification is used to inform internal applications of external tasks, then task processing responsiveness is improved, but resource allocation and real-time behavior are interfered with
Solution Approach 1:
The system performs preliminary actions by pre-processing external tasks and placing them in a task queue before internal applications are ready to handle them. This allows tasks to be prepared in advance (data validation, formatting, queue insertion) without forcing internal applications to deviate from their real-time request handling rhythm. The task notification mechanism is decoupled from the actual task execution timing.
Solution Approach 2:
A task queue serves as an intermediary component between external task sources and internal applications. External tasks are submitted to the queue, which then manages their distribution to internal applications at appropriate times. This intermediary buffer resolves the contradiction by allowing asynchronous task accumulation and controlled retrieval, preventing real-time request handling from being disrupted while ensuring tasks are eventually processed.
2Adaptability or versatility
If external applications directly access internal application queues, then task submission flexibility is improved, but system security and access control are compromised
Solution Approach 1:
The task queue system acts as an intermediary layer that external applications interact with, rather than allowing direct access to internal application queues. This intermediary maintains access control lists (ACLs) and authorization mechanisms (such as oAuth) that verify external application credentials before permitting task submissions. The internal application structure and queue remain protected from direct external access, maintaining security while allowing flexible task submission through controlled interfaces.
Solution Approach 2:
The system segments access control into multiple layers: external applications authenticate against the task queue's ACL system, the task queue validates permissions and manages task routing, and internal applications receive only authorized tasks. This segmentation allows flexible task submission from external sources while maintaining distinct security boundaries that protect internal application integrity.
Data Source
AI summary
A method for notifying and tasking computer applications hosted by an application execution system by computer applications external to the application execution system is provided. An external computer application may use an external Task queue API to add tasks to the internal application's task queue. The internal application can then see the tasks and act upon the tasks at a convenient, non-busy time for the internal application. An intermediary subscription system may manage an internal application's event subscriptions. When an event occurs, the intermediary subscription system may add a task to the subscribing internal application's task queue. A second intermediate system manages the access control list of an internal application's task queue. This system restricts access to the task queue to only those external applications that are explicitly granted permission in the internal application's task queue configuration file.


