I was involved in a project where we had a problem with the performance after go live. It was really not performing as expected and they had to get SAP to restart the tenants.
Note: If you are looking to perform load tests on SAP Cloud Integration, check out the blog on creating performance tests. It will also be a good way to check the improvements you create.
One of the consultants Juan Francisco Duque from Sapere shared some of the challenges that he had faced during the processing. There were 3 interesting aspects that I picked up that you should consider when developing CPI iflows for bigger projects.
In this post we will cover 3 things:
- Loop vs collections
- String Building vs. concatenation
- CPI logic vs Groovy scripting
It is one thing to process 10-100 line items, but 100k-1m may have an exponentially longer processing time. It was some of the challenges that Juan found during the go-live support. He had to redesign part of the processing to take out splitting, embedding more into Groovy code.
One thing that I did not know was that closures and each statements did not really scale well. There is a good post on the different types of loops and performance in groovy.
One of the tools used to understand the CPI performance was the Figaf CPI monitor. It did give him the graphs he needed to find how to improve the performance.
You can see the replay here.
Watch on YouTube SAP CPI Performance Testing
If you want much more detail, check out the slides.