Performance test on Jetty/HSQLDB with a single wiki
Environment
- Ubuntu 14.04 64b
- Quad core i7
- Oracle JDK 1.8.0_20 64b
- standard jetty+hsqldb
- only main wiki
Summary
Speed
Actions | Difference |
---|---|
Jetty startup | Same |
First access to not existing page without UI | Same |
First access to not existing page with UI | 3 times slower |
Reload of not existing page without UI | more that 2 times slower |
Reload of not existing page with UI | 2 times slower |
Reload of Main.WebHome with UI | 2 times slower |
Reload of Main.WebHome without UI | more than 2 times slower |
Full SOLR reindex | Same |
SOLR sync when index is empty | Same |
SOLR sync when there is nothing to do | Same |
Page with 1000 macros without UI | almost 3 times quicker |
Memory
Memory after jetty startup | use almost half and keep less |
Memory after full SOLR index | Use less but keep more |
Jetty startup
Same
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).
Same
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/get/NoSpace/NoPage).
3 times slower
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)
more that 2 times slower
Unit: milliseconds
- 5.4.5 : [10, 20]
- 6.2 : [30, 40]
Reload of not existing page with UI (/xwiki/bin/view/NoSpace/NoPage)
2 times slower
Unit: milliseconds
- 5.4.5 : [100, 150]
- 6.2 : [200, 300]
Reload of Main.WebHome with UI
2 times slower
Unit: milliseconds
- 5.4.5 : [250, 350]
- 6.2 : [400, 500]
Reload of Main.WebHome without UI
more than 2 times slower
Unit: milliseconds
- 5.4.5 : [65, 90]
- 6.2 : [145, 190]
SOLR
Full SOLR reindex
Same
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
Same
Unit: seconds
- 5.4.5 : 1
- 6.2 : 1
when there is nothing to do
Same
Unit: seconds
- 5.4.5 : < 1
- 6.2 : < 1
Rendering
Page with 1000 macros without UI
almost 3 times quicker
1000 times {{id}} macro, one on each line.
Unit: milliseconds
- 5.4.5 : 9500
- 6.2 : 3500
Memory
Attach Yourkit to get the information.
Unit: MB
Memory after jetty startup
use and keep less
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
Memory after full SOLR index
Use less but keep a bit more
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