Effective June 19, 2017, support for the Ravello cloud services will transition to My Oracle Support (MOS) and the Oracle support hotlines and will no longer be provided through the Ravello Support portal. Please watch for communications being sent to commercial customers via email about the Support transition.

API Request Rate limits

Ravello is using throttling mechanism for our API access points to help and ensure best performance to all our users. This mechanism makes sure that API calls to the service do not exceed the allowed request rate.

The limits are per USER, per ORGANIZATION and per SERVICE, while limits are calculated for DAY, HOUR and MINUTE.

Our limits are set to fit most of the common use cases we are aware of.

If one hits any of these limits the HTTP response code would be [429] "too many requests".

In such cases it is advised to make sure the used workload is not "over-using" API calls, or high rate retries. It is always better to start polling for an object status after a reasonable time period to make sure the preliminary process has finished.

E.g :

- Fetching for applications/{ID} in order to detect app status after publishing, such call is often used too early and too much.

Best practice : wait a reasonable delay after the publish action (5-6m), start polling for the status with a reasonable delay (5-10s). For best results wait incremental sleep intervals.

- Fetching batch objects, trying to get a massive bulk of objects (applications for example), will require appropriate sleep between successive requests. And again, for best results wait incremental sleep intervals.

 

As a general advice we always recommend using "exponential backoff"* mechanism to handle errors that are a results of "HTTP 429 too many requests" issue. 

*Just google for "exponential-backoff".

 

Have more questions? Submit a request

Comments

Powered by Zendesk