Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Jorge_Baltazar
Product and Topic Expert
Product and Topic Expert
UPDATE – Relevant for S/4HANA 2022, 2021, 2020, 1909, 1809, 1709, 1610

Fiori performance is a hot topic in every implementation, we’ve gone a long way from the first release of Fiori to the latest version in S/4HANA and so has the products performance evolved.

Understanding the overall architecture of the solution is key to identify performance issues because in the Fiori architecture, your browser is directly accessing the back-end via each Fiori tile. Each tile on the FLP is making numerous calls to (and receiving) data from the server, which can cause latency issues.

Note that when referring to the backends in the S/4HANA model we are talking about the integration between 3 main components: Web Dispatcher, Frontend Server, and Backend Server so, depending on the network configurations of these servers, network performance issues may arise.

As you can imagine, you will find some cases where performance issues may go deep into code or network debugging, however, there are some quick actions you can take in every project to ensure the best performance of your Fiori Launchpad (FLP).

We will list some performance tips and tricks for all your current implementations:

 

1. Use what you need

As part of the Fiori UX design guidelines it is recommended you limit access to the tiles that are needed for each user role. The more tiles you have on your FLP, the longer it will take to load. To lessen any latency issues, only add the tiles you need.

It is recommended that you do not exceed 7x7 (49 tiles) per FLP group, also notice the more catalogs you have assigned, the longer it’s going to take to load the home screen.

To make sure you get users what they need we recommend going through Design Thinking workshops at the early stages of the project, in order to build “Personas” which will later help you define the required business roles.



 

2. All tiles are not equal

There are three types of tiles – KPI, dynamic, and static. The KPI and dynamic tiles have a bigger impact on bandwidth, as they are in constant communication with the back-end servers to update. The static tiles do not change; once they are loaded onto the FLP, they are not making any additional “calls” to update.

For KPI and dynamic tiles try to define a refresh interval or cache duration suitable to your end user needs and SAP landscape capabilities.



NOTE - When assigning multiple KPI's with dynamic tiles in a single Fiori Launchpad group you may face performance issues as the tiles will attempt to run the underlying analytic queries in the backend at the same time. If your system is undersized you may face system overload as each query will consume one dialog work process. As a first step, we strongly recommend reviewing system sizing for Embedded Analytics in S/4HANA and ABAP work process tuning before granting access to this reports to a large number of users.

3. Introducing Tab Bar Navigation

One of the new features in Fiori 2.0 is Tab Bar Navigation, this feature changes the interaction of the end user with FLP as tiles are displayed per group. This setting can be switched on for all users by the system administrator or enabled through user personalization.

You can find the details to setup this feature in the following blog.



 

4. Introducing CDN (Content Delivery Network)

One of the main reasons for slow performance is the fact that the SAP UI5 libraries are located in the ABAP Front-end Server (FES), when the Fiori web page is rendered it needs to make a call to the ABAP FES to load the JavaScript libraries. In high-latency networks this results in high rendering time lapses which affect end-user performance.

One way to overcome this situation is to load UI5 libraries from a Content Delivery Network (CDN, Akamai) which enables users to load the UI5 libraries from a network server closest to their current location.

You can find the details to setup this feature in the following blog.



 

5. Take advantage of CDN and Tab Bar

By mixing these two features you will be able to improve FLP performance around 40%



 

6. Improve Webdynpro, Webgui and App Finder performance

You can find some general recommendations in the following blog.

Try running report /UI2/NWBC_DELETE_MENU_CACHE every now and then as you may find wrong entries in table /UI2/NWBC_NAV_TR (column NWBC_VERSION will have the value “LOADING”).

7. Improve OData performance

OData performance is usually good, in some very specific cases you will find that OData requests execution time is longer than expected. This will usually occur for OData services that expose very large data sets. If this is the case, you can try configuring OData services in Co-deployed mode.

You can find the details to setup this mode in the following blog.



 

8. Make sure you setup your browser's cache

Ensure browser cache settings are optimized for maximum performance and try not to use any settings that bypass the browser cache, for example:

  • Do not run the Fiori Launchpad in private mode

  • Select a sufficient cache size limit

  • Do not clear the cache history automatically when the browser closes

  • Enable browser caching

  • Do not disable the browser cache in the browser developer tools

  • Enable HTTP compression


You can find a detailed how-to document describing these settings in all three major browsers (Chrome, Firefox, Internet Explorer) in note 2447857



 

9. Get the right certificates (SSL)

Are you using HTTPS  communication? Make sure it is correctly setup, you can monitor this in the browser's developer tools in the network tab.

If you are using self-signed certificates or your certificate has not been signed by a valid Certificate Authority (CA) you will face performance issues as any error with the certificate means that the webpage will not be cached.

You can find additional details of this bug here and here. Also note that versions 58 or higher of Chrome now mandatorily require that the SAN (Subject Alternative Name) field of the server’s SSL certificate is correctly populated, you’ll find the detailed issue and resolution in this blog.



 

10. Still facing performance issues?

Take a look at note 2471635, you will find some common performance issues and their solution. Note that some solutions may require additional development efforts.

You can also go through the SAP Guided Answers: Performance Issue for Apps in Fiori Launchpad - Where to Improve checklist.

 

Becoming a SAP Fiori for SAP S/4HANA guru

You’ll find much more on our SAP Fiori for SAP S/4HANA wiki

Do you have any questions? Let us know in the comments section.

Thanks,

SAP S/4HANA RIG
13 Comments