8.1 Performance Analysis 
In the context of performance, login is not considered separately, as it is a once-off process over the life-time of NWBC running. Standard authentication processes are used for all other HTTP access to the server, for example by Web Dynpro ABAP, BSP, etc. Login is very much influenced by the form of authentication used, for example form-based authentication versus digital certificates. The login is standard ABAP and not NWBC-specific.
NWBC for Desktop is a program running completely on the local client computer. On startup, it retrieves the navigation tree from the PFCG store with a few HTTP requests. Thereafter, the shell has no further contact to the server, but caches the complete navigation tree on the client.
Client |
The program running on the desktop consumes main memory in the magnitude of 100 MB. |
Network |
2 HTTP requests with a payload of typically 50 KB (this depends on the role setup) to read the complete navigation tree. Further sporadic small HTTP requests are fired to the server to resolve navigation targets which are needed to start additional applications. This data is also only fetched once on demand and from then onwards cached on the client. |
Server |
1 ABAP session with a lifetime of 15 seconds and main memory consumption of approximately 3 MB. |
Conclusion: The performance footprint on the network and server can be neglected as they only account for the startup. Only the client footprint is of relevance for the desktop shell.
NWBC for HTML is running inside a browser on the client. Each shell interaction triggers a roundtrip to the server to render the next view of the shell. This impacts both the network and server.
Client |
Browsers need minimal resources to render the HTML representation of the navigation tree. This can be neglected. |
Network |
Each shell interaction step: 1 HTTP request with a payload of typically 20 KB. |
Server |
Each interaction step: 1 ABAP session with a lifetime of 15 seconds and main memory consumption of approximately 3 MB. |
Conclusion: The HTML shell creates a continuous but low performance footprint on both network and server.
NWBC does not change the performance profile of the contained canvasses / applications.
As to the SAP GUI canvas, NWBC just starts a normal SAP GUI to run any specific transaction. NWBC does have a slightly higher overhead to start the SAP GUI canvas and start the transaction inside the new SAP GUI canvas. However, once the SAP GUI canvas is running, we have a normal SAP GUI running with the transaction, giving exactly the same performance footprint as when the transaction is running stand-alone.
Similarly, when starting any Web Dynpro ABAP application, NWBC will just host a browser control in which the Web Dynpro ABAP application is running. It is exactly the same application running in the same browser as runs stand-alone. Again the performance impact of the application in an NWBC canvas is similar to that of the application running stand-alone.