- Ably FAQs
- Account billing and packages
- Packages & Pricing
-
Account billing and packages
-
General
-
Realtime API and client libraries
-
Troubleshooting
-
Channels
-
REST API and client libraries
-
Ably error codes
-
Account and app setup and configuration
-
Ably architecture, transports, and security
-
Performance and Redundancy
-
Push Notifications
-
Reactor Queues, Events and Firehose
-
Migrating to Ably from an existing service
-
API Streamer
-
Connections
I've hit a max rate limit for reactor, what does this mean?
This means you've sent enough events through Reactor within the last second to surpass your limit or to be warned about your usage. There are two types of reactor limit you may get:
- reactor.httpEvent - this includes all Reactor Events such as AWS Lambda, Google Functions, Azure Functions and custom HTTP endpoints.
- reactor.amqp - this includes all Reactor Queue and Firehose streaming
There are two types of limit types you can hit for both of these:
- maxRate.warning - when you reach 50% of your quota.
- maxRate.hard - when the hard limit on the account has been exceeded. Events will now be suppressed until the second is over.
If you need the ability to send more events through Reactor, we recommend you get in touch to discuss upgrading to a bespoke package.
How are instantaneous rate limits implemented?
An instantaneous rate limit is calculated based on the current rate of the operation per second. For example, a self-service package can publish at most 200 messages per second to their Ably Reactor queues; if you exceed this, messages above that point will be suppressed. This is done on a rolling probabilistic basis; for example, if you have a queue rule that attempts to publish 400 messages per second to a queue, each one will have a 50% chance of being rejected, with the suppression probability being continuously updated based on the current attempted publish rate.