Projects:Static Resources Caching/QA
Contents |
Automatic Tests
This project affects to the whole application and in particular to the log-in process, taking into account that new cache mechanism must allow the correct loading of the static resources. The smoke tests currently covering those processes should be enough to ensure that the normal flows continue working fine.
Manual Tests
Some additional manual tests have been performed in order to ensure that some basic features affected by this project are still working fine:
- Log-in in the ERP. Checked that the static resources are cached properly after the first successful login.
- Log-in in WebPOS. Checked that the static resources are cached properly after the first successful login.
- Use a 3.0 selector included within a classic window. This is related with issue 34938.
- Check that the log-in is working properly after invalidating the cache by restarting Tomcat.
- Check that the log-in is working properly after invalidating the cache through JMX.
Performance
This project aims to improve performance and the scalability in terms of number of requests and time required to compute and deliver the static resources.
The following sheet shows, among others, the requests and time spent to process the static resources before the changes introduced as part of this project.
They can be compared with the improvements achieved:
Number of Requests
Regarding javascript content generated with the StaticResourceComponent, after the first successful login 0 requests are done, this is because:
- The request to the StaticResourceComponent component is avoided as we now detect that the javascript content has already been generated.
- The generated javascript file is cached by the browser.
The following screenshot shows the javascript requests fired once the javascript static resources information is in cache.
Regarding the css content generated with the StyleSheetResourceComponent, after the first successful login 1 request is done, but it takes the information from cache, thanks to the ETag.
Component Generation Time
It is also has been measured how long takes the components to generate the content when the new cache mechanism is used.
The results of this measurement are summarized in the following sheet.
The StaticResourceComponent (javascript) and the StyleSheetResourceComponent (css) are respectively 97% and 96% faster when using the cache.
Code Review
https://docs.google.com/spreadsheets/d/1Bou-m1M36yIOvsgqsnDiw9kC-bW_NXk08PKnRTiTaWc/edit#gid=0