The API operations provided by Enterprise Distributed Application Service (EDAS) are deployed in POP API. When you use an SDK provided by EDAS to call an API operation, an error message appears, which indicates that the API call is throttled. This error message is returned because the throttling threshold for the API operation is exceeded. In this case, you must adjust the API request frequency based on the throttling rules.

Symptom

When you use Java SDK or Python SDK provided by EDAS to call an API operation, an error message appears, which indicates that the API call is throttled. Example:

2018-11-29 10:48:59,909, ERROR com.aliyuncs.exceptions.ClientException: Throttling. User: Request was denied due to user flow control.

Cause

The API operations provided by EDAS are deployed in POP API. The error message appears because the throttling threshold for the API operation is exceeded. This throttling protection mechanism ensures the stability of backend API operations.

Solution

If such an error log exists, you must understand the throttling rules that apply to the API operation. The request frequency of each API operation varies. Therefore, each API operation applies different throttling rules. You must adjust the request frequency after throttling is triggered.

Throttling rules for common API operations

Number API operation Request URL Throttling threshold Special throttling
1 DeployApplication /pop/v5/changeorder/co_deploy_app 40 times per minute No
2 GetChangeOrderInfo /pop/v5/changeorder/change_order_info 100 times per minute Yes
3 ListApplication /pop/v5/app/app_list 60 times per minute Yes
4 ListDeployGroup /pop/v5/app/deploy_group_list 200 times per minute No
5 QueryApplicationStatus /pop/v5/app/app_status 100 times per minute No
6 ScaleOutApplication /pop/v5/changeorder/co_scale_out 40 times per minute No
7 ListScaleOutEcu /pop/v5/resource/scale_out_ecu_list 20 times per minute No
8 InsertApplication /pop/v5/changeorder/co_create_app 40 times per minute No
9 QueryMonitorInfo /pop/v5/monitor/queryMonitorInfo 60 times per minute Yes
10 GetApplication /pop/v5/app/app_info 40 times per minute Yes
Note In the preceding table, special throttling indicates that you can adjust the throttling threshold for each API operation based on the user ID. Each user has a unique ID.