Centralized Rate Limiter for Event Broker Services
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing centralized rate limiting systems struggle to efficiently manage and control access events across multiple services by multiple processes, leading to potential service overload and downtime due to excessive or anomalous events.
Innovation Solution
A computer-implemented method and system for centralized control of events, which involves monitoring event messages from an event broker server, counting event messages based on specific attributes, dynamically generating locks to block events exceeding thresholds, and providing these locks to processes for local implementation, thereby controlling access to services.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a centralized API rate limiter is used to control access to services, then service overload and downtime are prevented, but system complexity and processing overhead increase
Solution Approach 1:
The patent introduces a centralized rate limiter as an intermediary component that sits between multiple services and the event broker. This mediator monitors event messages, counts occurrences by combination, and dynamically generates locks when thresholds are exceeded, thereby preventing service overload while maintaining a modular system architecture.
Solution Approach 2:
The rate limiter implements a feedback mechanism by continuously monitoring event messages from the event broker, counting them by combination, and dynamically adjusting lock generation based on whether counted combinations exceed predefined thresholds. This closed-loop feedback system automatically responds to traffic patterns to maintain service reliability.
2Reliability
If event messages are monitored and locks are dynamically generated to block excessive events, then service protection from overload is improved, but processing time and computational resources increase
Solution Approach 1:
The system performs preliminary actions by pre-defining threshold values for event combination counts before runtime. When monitoring event messages, the rate limiter only needs to compare current counts against these pre-set thresholds and generate locks when exceeded, rather than performing complex real-time analysis, thus reducing processing time while maintaining effective service protection.
3Ease of operation
If all request messages flow through a centralized rate limiter, then uniform access control is achieved, but network latency and bottleneck risks increase
Solution Approach 1:
The patent segments the rate limiting function by organizing event combinations into distinct groups with specific thresholds. The centralized rate limiter processes events in an organized manner by combination, generating specific locks for exceeded combinations rather than uniformly processing all events sequentially. This segmentation approach maintains uniform access control while improving throughput by parallelizing the monitoring and lock generation processes.
Data Source
AI summary
There is provided method of centralized control of events corresponding with event messages, comprising: monitoring event messages from an event broker server of a distributed event streaming technology service monitoring a central event dataset storing event messages streamed over a network from processes implementing events for accessing the services, counting a number of event messages for combination(s) of event attribute(s) according to set(s)-of-rules, dynamically generating a lock that includes instructions for blocking event(s) that correspond with the event messages having the certain combination of event attributes(s) in response to the number reaching a threshold for a certain combination of event attribute(s), and dynamically providing the lock to each process that implements event(s) that correspond with event messages having the combination of event attribute(s), wherein each process is configured for implementing the lock for locally blocking the event(s) corresponding with the event messages having the certain combination of event attribute(s).


