Performance test on Jetty/HSQLDB with a single wiki between 5.4.5 and 6.2
Environment
- Ubuntu 14.10 64b
- Quad core i7
- Oracle JDK 1.8.0_25 64b
- standard jetty+hsqldb
- only main wiki
Summary
Speed
Actions | Difference | |
---|---|---|
Jetty startup | Same | |
First access | not existing page without UI | Same |
not existing page with UI | x2 (most probably the LESS init) | |
Reload | not existing page without UI | Same |
not existing page with UI | Same | |
Main.WebHome with UI | Slightly better | |
Main.WebHome without UI | Same | |
SOLR | Full SOLR reindex | Same |
SOLR sync when index is empty | Same | |
SOLR sync when there is nothing to do | Same | |
Rendering | Page with 1000 macros without UI | /3 |
Memory
Actions | Difference |
---|---|
Memory after jetty startup | Same |
Memory after full SOLR index | Use a bit more but keep less |
Jetty startup
Unit: seconds
Until end message is printer. Done by hand with a chronometer.
- 5.4.6: 10
- 6.3: 8
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.6 : 6
- 6.3 : 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.6 : 8
Done by hand with a chronometer (image/js/css/etc. resources are not taken into account).
- 6.3 : 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.6 : [13, 24]
- 6.3 : [17, 24]
Reload of not existing page with UI (/xwiki/bin/view/NoSpace/NoPage)
Unit: milliseconds
- 5.4.6 : [100, 200]
- 6.3 : [100, 200]
Reload of Main.WebHome with UI
Unit: milliseconds
- 5.4.6 : [200, 400]
- 6.3 : [200, 250]
Reload of Main.WebHome without UI
Unit: milliseconds
- 5.4.6 : [100, 200]
- 6.3 : [100, 200]
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.6 : 58
- 6.3 : 59
SOLR sync
Only the thread determining what need to be indexed and not the actual indexing.
when index is empty
Unit: seconds
- 5.4.6 : 1
- 6.3 : 1
when there is nothing to do
Unit: seconds
- 5.4.6 : < 1
- 6.3 : < 1
Rendering
Page with 1000 macros without UI
1000 times {{id}} macro, one on each line.
Unit: seconds
- 5.4.6 : 10
- 6.3 : 3
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.6 : 184 used, 326 allocated
- 6.3 : 143 used, 311 allocated
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.6 : 261 used, 467 allocated
- 6.3 : 292 used, 501 allocated