Dynamic Message Priority Weighting for Multi-Tenant Platforms
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional multi-tenant platforms face challenges in equitably processing asynchronous messages, leading to degraded service for tenants with low traffic due to 'noisy neighbors' causing high message volumes, as existing systems rely on fixed resource allocation and reactive throttling without dynamic adjustment.
Innovation Solution
Implement a dynamic system that updates tenant priorities in real-time, delaying or rejecting messages based on current backlog and traffic conditions, using priority weights to ensure fair processing across multiple tenants.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If fixed resource allocation is used for message processing, then system simplicity is maintained, but service quality degrades when noisy neighbors generate high message volumes
Solution Approach 1:
The patent implements dynamic resource allocation by adjusting the number of processing threads assigned to each tenant based on real-time message volume metrics. The system monitors message rates and automatically scales thread allocation up or down, transforming the static resource allocation into a dynamic system that adapts to changing load conditions while maintaining service quality for all tenants including noisy neighbors.
2Reliability
If reactive throttling is applied to noisy neighbors, then service quality for other tenants is improved, but the noisy neighbor cannot be returned to normal status after traffic subsides
Solution Approach 1:
The patent implements a feedback-based throttling mechanism that continuously monitors message volumes from each tenant and adjusts resource allocation accordingly. When a noisy neighbor's traffic subsides, the system detects the reduced message volume through its monitoring metrics and automatically returns the tenant's resource allocation to normal levels, enabling seamless status recovery without manual intervention.
Solution Approach 2:
The system employs dynamic adjustment of processing threads based on real-time tenant behavior. Rather than applying static throttling, the resource allocation changes dynamically in response to observed traffic patterns, allowing automatic transition between throttled and normal states as tenant message volumes change over time.
3Device complexity
If messages are processed in received order, then processing simplicity is maintained, but wait times increase for low-traffic tenants due to noisy neighbor message flooding
Solution Approach 1:
The patent implements dynamic thread allocation where the number of processing threads assigned to each tenant's message queue is adjusted based on real-time message volume metrics. For noisy neighbors generating high message volumes, the system allocates more threads to prevent backlog accumulation, while low-traffic tenants receive fewer threads. This dynamic adjustment maintains processing simplicity through standardized queue handling while eliminating excessive wait times by matching processing capacity to actual demand.
Data Source
AI summary
Systems, methods and media are shown for equitable job processing of asynchronous messages for multiple tenants in a multi-tenant platform that involve receiving messages of a given message type in an input buffer from at least one front end tier (FET) device, providing messages of the given message type from an output buffer to at least one back end tier (BET) device, determining a priority weight W for each message in the input buffer based on a tenant identifier and message type for the message, and evaluating the priority weight W for the message and delaying the message if the priority weight W is below a priority threshold and moving the message to the output buffer if the priority weight W is not below the priority threshold.


