Difference between revisions of "DPL:Load Test"

From FollowTheScore
Jump to: navigation, search
(Test B)
 
(3 intermediate revisions by the same user not shown)
Line 17: Line 17:
 
The html output is 900 kBytes, so you need a fast connection, otherwise you will measure the time to get the result over the wire instead of the time to generate it.
 
The html output is 900 kBytes, so you need a fast connection, otherwise you will measure the time to get the result over the wire instead of the time to generate it.
  
Execute: [[DPL:LoadTest A]]
+
Execute: [[DPL:Load Test A]]
  
 
== Test B ==
 
== Test B ==
 
We just pick up the template calls. This result is around 200 kBytes. Note that we process 2100 template invocations. Response time is usually in the same order as above, maybe a little faster. You may observe that the second executiuon of the test is considerably faster than the first one. Probably this has to do with MySQL caching strategies.
 
We just pick up the template calls. This result is around 200 kBytes. Note that we process 2100 template invocations. Response time is usually in the same order as above, maybe a little faster. You may observe that the second executiuon of the test is considerably faster than the first one. Probably this has to do with MySQL caching strategies.
  
Execute: [[DPL:LoadTest B]]
+
Note: actually we restricted the test to ~50% of the load described above. Due to some configuration limits of this webserver it may happen otherwise that the operating system throws the process out.
 +
 
 +
Execute: [[DPL:Load Test B]]
  
 
== Test C ==
 
== Test C ==
Line 28: Line 30:
 
This is fast (2-3 seconds) although we use a LIKE expression. This may change if you have more documents in your wiki.
 
This is fast (2-3 seconds) although we use a LIKE expression. This may change if you have more documents in your wiki.
  
Execute: [[DPL:LoadTest C]]
+
Execute: [[DPL:Load Test C]]
  
 
== Test D ==
 
== Test D ==
 
We select the same articles based on the fact that they all use the same template. This requires some database join. There is no big difference to the test above.
 
We select the same articles based on the fact that they all use the same template. This requires some database join. There is no big difference to the test above.
  
Execute: [[DPL:LoadTest D]]
+
Execute: [[DPL:Load Test D]]

Latest revision as of 08:27, 7 October 2008

Various Load Tests

Please use with care as we do not want to put extreme load to the web server.

  • We have 100 documents named LoadTest_001 .. LoadTest_099.
  • Each document has 20 chapters
  • each chapter has 40 text lines of 72 characters

So, a document is around 60 kBytes, the whole text volume is around 6 MBytes

Each document makes 21 template calls (one per chapter and one at the end).

As this is a shared server results will not be the same all the time.

Test A

We extract 3 chapters from every document; This takes around 10 seconds typically but I have also observed response times below 5 seconds. The html output is 900 kBytes, so you need a fast connection, otherwise you will measure the time to get the result over the wire instead of the time to generate it.

Execute: DPL:Load Test A

Test B

We just pick up the template calls. This result is around 200 kBytes. Note that we process 2100 template invocations. Response time is usually in the same order as above, maybe a little faster. You may observe that the second executiuon of the test is considerably faster than the first one. Probably this has to do with MySQL caching strategies.

Note: actually we restricted the test to ~50% of the load described above. Due to some configuration limits of this webserver it may happen otherwise that the operating system throws the process out.

Execute: DPL:Load Test B

Test C

We just produce the list of LoadTest articles without steppping into them for analysis. This is fast (2-3 seconds) although we use a LIKE expression. This may change if you have more documents in your wiki.

Execute: DPL:Load Test C

Test D

We select the same articles based on the fact that they all use the same template. This requires some database join. There is no big difference to the test above.

Execute: DPL:Load Test D