Skip to Content

UI5 Load testing issue, through Jmeter (Backend - SAP CRM)

Hello All,

So we have developed a Fiori interface for some SAP CRM applications for one of our customers.

Through the Fiori interface we are able to create and save Service Orders which then updates in backend CRM system through Odata services. In the backend, we are making use of APIs CRM_ORDER_READ/CRM_ORDER_MAINTAIN/CRM_ORDER_SAVE etc. to fetch and update the data in CRM Order Transactions.

Everything works fine if we do Saving/Closure of a 1 Service Order at a time. It takes about 7-8 seconds which is quite good, because even the WebUI takes 4-5 seconds to save/update the Service Order. However, to check the Load Performance of the Fiori Service Order application, we are making use of JMeter tool. Through JMeter script we tried closing 100 SOs at Exactly the same time.

And it took almost 4-5 minutes on an average to Save per SO. This is HUGE and understandably not acceptable.

During our internal checks we found out that CRM_ORDER_SAVE is taking the most of the time during processing. This is also understandable, as we have quite a few custom implementations of Order Save BAdi. Here, we are doing lots of validations and there is also some custom logic to update AET fields, Ibase updation etc.

Now, I understand this will slow down the system a bit, but for 1-2 SO closure this only takes a few seconds, as pointed earlier. I am not able to understand why this time is increasing exponentially when 100s closed at Exactly the same time?

* Is our system not able to handle such amount of load concurrently (but we don't get any dumps in the backed)?

* Is there a possibility of some kind of resource locking (waiting to update tables, RFC calls etc.)?

* Is this even a good way to do 'Real time' load testing, as even if 100 users work on the Fiori application, they won't be all closing the SO at EXACTLY the same time, which JMeter script might be trying to do.

My issue is that while we continue to optimize our code at the backend (like data fetch from DB), the real issue might be something else (eg. resource locking), which can't pin-point right now.

Could anyone please give use some pointers as to why this must be happening ?

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

0 Answers