Rate Limiting and Billing
Object Store v2 uses two metrics to determine billing and rate-limiting:
- API Requests
-
API requests are HTTP transactions, such as GET, PUT, and POST.
Object Store uses API requests to calculate transactions per second (TPS) for rate limiting.
See Rate Limiting.
- Effective API Requests
-
Effective API requests are the units that Object Store uses to calculate billing.
One API request could generate many effective API requests.
Rate Limiting
Every API request (via the connector or API) to Object Store v2 counts toward the TPS limit, based on your subscription type:
Subscription Type | TPS Limit |
---|---|
Base subscription |
10 TPS per app |
Premium add-on subscription |
100 TPS per app |
For example, if your app retrieves 1500 keys from an object store with a page size of 25:
-
With the base subscription, the response is throttled over 6 seconds.
-
With the premium subscription, the response is not throttled.
If the app exceeds the number of TPS allotted based on the subscription type,
Object Store v2 returns a 429 HTTP Error
response, indicating that it reached the rate limit.
If the app reaches the TPS limit, you can either upgrade to a premium subscription or redesign the app to send API requests more slowly.
How Billing is Calculated
Effective API requests count towards your monthly billing usage and quota.
An effective API request counts as one or more units against the quota, depending on the size of the payload and the number of keys returned.
-
For each API request, up to 100 KB of object-payload data (if applicable) counts as one unit against the quota.
For example, if an app retrieves one key from an object store with a total payload size of 500KB, the request counts as five units against the quota.
-
Each 100 KB of payload data above 100KB counts as an additional unit.
For example, if an app retrieves one key from an object store with a total payload size of 101KB, the operation counts as two units against the quota.
-
For both the
retrieveAll
andretrieveAllKeys
operations, the size of all key-value pairs in the object store partition counts towards billable units.If an app runs a
retrieveAllKeys
operation to retrieve only the keys in the object store, the billable unit is based on the size of the key-value pairs, not just the keys.
The following table lists the maximum number of API requests per month, based on your subscription type:
Subscription Type |
Maximum API Requests Per Month |
Base subscription |
26 million |
Premium add-on subscription |
100 million per add-on subscription |
If your usage exceeds your license limit, Object Store v2 continues to work. MuleSoft notifies your account administrator and team of any billing-related information.
Access Object Store Effective API Request Usage Charts
To view a chart that shows how many effective API requests your apps have consumed and the number of effective API requests that your subscription allows:
-
Log in to Anypoint Platform.
-
Click Access Management in the left navigation bar or the main Anypoint Platform page.
-
Click Object Store in the SUBSCRIPTION section:
Figure 1. The arrow shows the Object Store option on the Access Management page. -
Click a chart duration value of 6m (six months, default), 1y (one year), or 2y (two years):
-
(1) Duration value
-
(2) Number of effective API requests per month
-
(3) Percentage and amount of your quota that you have used
If the usage is 0, the chart displays <1%
. -
(4) Subscription type
-
Base 0.0
indicates the Base subscription. -
Base values greater than
0.0
indicate Premium add-on subscriptions.
Monthly billing usage information is delayed by 24 hours.
The circle graph changes to red as your effective API request usage approaches your quota:
-
-
In some cases, the stats for the current month might not load when the backend process updates the records. If this happens, use the Object Store v2 Stats API Usage Metrics by Organization to query the daily usage in the current month and then add the daily usage together.
Retrieve Usage Metrics with Anypoint MQ Stats API
To use the Object Store v2 Stats API to retrieve usage metrics, see: