Performance test on Jetty/HSQLDB with a single wiki between 5.4.5 and 6.2
Environment
- Ubuntu 14.04 64b
- Quad core i7
- Oracle JDK 1.8.0_20 64b
- standard jetty+hsqldb
- only main wiki
Summary
Speed
Heap Memory
Actions | Difference |
---|---|
Heap Memory after jetty startup | Use almost half and keep less |
Heap Memory after full SOLR index | Use less but keep more |
Jetty startup
Unit: seconds
Until end message is printer. Done by hand with a chronometer.
- 5.4.5: 12
- 6.2: 12
First access
First HTTP request after starting Jetty.
First access to not existing page without UI (/xwiki/bin/get/NoSpace/NoPage)
Unit: seconds
Firefox network statistics to load the root resource (image/js/css/etc. resources are not taken into account).
- 5.4.5 : 6
- 6.2 : 6
First access to not existing page with UI (/xwiki/bin/view/NoSpace/NoPage)
Unit: seconds
Firefox network statistics to load the root resource (image/js/css/etc. resources are not taken into account).
- 5.4.5 : 6
Done by hand with a chronometer (image/js/css/etc. resources are not taken into account).
- 6.2 : 18
Reload
XWiki is doing nothing on background and everything is both in server and client cache already. Firefox network statistics to load the root resource (image/js/css/etc. resources are not taken into account).
Reload of not existing page without UI (/xwiki/bin/get/NoSpace/NoPage)
Unit: milliseconds
- 5.4.5 : [10, 20]
- 6.2 : [30, 40]
Reload of not existing page with UI (/xwiki/bin/view/NoSpace/NoPage)
Unit: milliseconds
- 5.4.5 : [100, 150]
- 6.2 : [200, 300]
Reload of Main.WebHome with UI
Unit: milliseconds
- 5.4.5 : [250, 350]
- 6.2 : [400, 500]
Reload of Main.WebHome without UI
Unit: milliseconds
- 5.4.5 : [65, 90]
- 6.2 : [145, 190]
SOLR
Full SOLR reindex
Unit: seconds
Delete the data/solr folder, restart, load home page and calculate the time of activity of the SOLR index thread using Yourkit (Yourkit is slowing down a bit all that but what is important is the difference anyway).
- 5.4.5 : 51
- 6.2 : 53
SOLR sync
Only the thread determining what need to be indexed and not the actual indexing.
when index is empty
Unit: seconds
- 5.4.5 : 1
- 6.2 : 1
when there is nothing to do
Unit: seconds
- 5.4.5 : < 1
- 6.2 : < 1
Rendering
Page with 1000 macros without UI
1000 times {{id}} macro, one on each line.
Unit: milliseconds
- 5.4.5 : 9500
- 6.2 : 3500
Heap Memory
Attach Yourkit to get the information.
Unit: MB
Heap Memory after jetty startup
Start jetty and wait until java is not doing anything on both (wait for potential initialization of various stuff like core extension cache, etc).
- 5.4.5 : used 178, allocated 515
- 6.2 : used 118, allocated 320
Heap Memory after full SOLR index
Delete the data/solr folder, restart, load home page then wait until nothing is happening in background.
Unit: MB
- 5.4.5 : used 273, allocated 645
- 6.2 : used 344, allocated 503