How Can We Help?
Web Service: Bandwidth Limits and ThrottlingWeb Service: Bandwidth Limits and Throttling
What
With the web service it is possible, if needed, to setup bandwidth throttling; this configuration is based on a set of limits.
How
The throttling is not per API key but for all endpoints and queries.
It can limit to the following:
Quota
- Max requests per hour
Throttling
- Max requests per second (requestsPerSecond): max amount of requests per second
- Recommendation: This would be based on how many CPU cores the machine has and what other tasks it has to do.
- If you have 8 cores and all 8 are available for the WS, you could set up 8 concurrent requests.
- If you have 8 cores and all 4 are used to run other tasks and 4 are available for the WS, you could set up 4 concurrent requests.
- Recommendation: This would be based on how many CPU cores the machine has and what other tasks it has to do.
- Max concurrent requests (concurrentRequests): max amount of concurrent requests
- Max concurrent sessions (concurrentRequests): max amount of concurrent sessions
- Max Wait Time (maxWaitTimeMS): max time in ms to wait for wait for a permit from the rateLimiter
The only obstacle currently limiting your queries towards the web service would be the amount of resources available; it's recommend being somewhat lenient as you can negatively affect Pure backend performance.
Note: The change can only be made by Elsevier and access to your Pure is needed (See guide below)
How to change:
Download the file the client currently have under administrator -> Configuration Select the one Called "HttpRequestThrottelingServiceConfiguration"
You need to click on the option in the dropdown if you only search for it and select it, it does not actually select the option.
Make sure that the Path changes, then you know it has been done right.
Download the file:
Open The XML downloaded and edit the Values under the section called “<urlPattern>/api.*</urlPattern>”
<requestsPerSecond>xx</requestsPerSecond> <concurrentRequests>xx</concurrentRequests> <concurrentSessions>xx</concurrentSessions> <maxWaitTimeMS>xx</maxWaitTimeMS>
Save the file and upload in the "Upload configuration XML"
It takes right away and you only get a short “Upload complete”
More Information
Note: Some of this information is for internal use only and might not be accessible.
A sample configuration: httpRequestThrottlingServiceConfiguration.xml (Elsevier access only)
Updated at July 27, 2024