No waiting dialog processes on SAP ECC in sync HTTP to ABAP inbound proxy
We have this sync scenario:
external apps using HTTP --> PI --> ABAP Proxy (SAP ECC)
ABAP Proxy (SAP ECC) --> PI --> external apps using HTTP
Where external application send xml request using HTTP protocol to PI 7.0 which forward this request to ABAP Inbound proxy on SAP ECC 6.0. After request is finished (sales order created) response is sent back to external application.
ABAP proxy calls two BAPI: BAPI_SALESORDER_CREATEFROMDAT2 to post a sales order and BAPI_SALESORDER_GETSTATUS to get item details and to return posted quantity. To speed up sales order posting we are using following statement: SET UPDATE TASK LOCAL before calling BAPI_SALESORDER_CREATEFROMDAT2, and COMMIT WORK.
When we start load testing with more parallel users (using JMeter) and we are able to get test result until we reach some number of parallel users (e.g. 11 users).
Our number of dialog processes is 12:
rdisp/wp_no_dia = 12
We monitored SAP ECC test system with SM66 and we see that there is at least one dialog process busy for one user on external application side. When we reach critical number of busy dialog processes out test SAP ECC server have to be restarted which is unexaptable.
Then we try to find out how to limit a number of dialog processes that HTTP request can use and we found two parameters and set values:
rdisp/http_check = 1
rdisp/http_min_wait_dia_wp = 2
After setting these parameters we try to reproduce a problem and now we are able to start 13 parallel users but when we start 14th SAP ECC system are stalled.
After this we started to change RFC parameters:
rdisp/rfc_check = 3
rdisp/rfc_min_wait_dia_wp = 2
but these parameters didn't help.
In the same time we didn't have any problem on SAP PI 7.0 system.
How can we limit a number of dialog processes on SAP ECC system that we can use for HTTP request communication from SAP PI 7.0?