Note: You are currently viewing documentation for Moodle 2.0. Up-to-date documentation for the latest stable version is available here: Performance testing moodle.org.

Performance testing moodle.org: Difference between revisions

From MoodleDocs
No edit summary
Line 20: Line 20:
! Test !! myisam !! myisam !! innodb !! postgres
! Test !! myisam !! myisam !! innodb !! postgres
|-
|-
| slowqueries 1 ||  || [[Image:server10-slowtest1.png]] || ||
| slowqueries 1 ||  || [[Image:server10-slowtest1.png]] || [[Image:server10-slowtest-innodb.png]] ||
|-
| slowqueries 100 ||  ||  ||  ||
|-
|-
| perspective (all caching off) ||  
| perspective (all caching off) ||  

Revision as of 05:21, 4 March 2009

Moodle.org hardware

The new servers for moodle.org consist of two machines directly linked by a 1Gb VLAN:

Web server

  • 2 x Quad Core Intel Xeon E5405 - 8 cores @ 2Ghz each
  • 2 x 146GB 15k RPM SAS drives in RAID 1 via PERC 6/i controller
  • 8Gb Registered ECC RAM

Database server

  • 1 x Quad Core Intel Xeon E5405 - 4 cores @ 2Ghz each
  • 3 x 146GB 15K RPM SAS drives in RAID 5 via PERC 6/i controller
  • 8Gb Registered ECC RAM

Server tests

Old Server New Servers
Test myisam myisam innodb postgres
slowqueries 1 server10-slowtest1.png server10-slowtest-innodb.png
perspective (all caching off)
   * 1402000 function calls
   * 11500 16KB files read from disk (cache)
   * 7900 regular expression replaces over 1KB of text
   * 6000 16KB files written to disk (cache)
   * 4880 get_record calls on the course table
   * 1030 insert_record calls on the course table
   * 240 update_record calls on the course table
   * 1293000 function calls
   * 11400 16KB files read from disk (cache)
   * 8200 regular expression replaces over 1KB of text
   * 6000 16KB files written to disk (cache)
   * 5530 get_record calls on the course table
   * 1590 insert_record calls on the course table
   * 250 update_record calls on the course table
   * 2057000 function calls
   * 14800 16KB files read from disk (cache)
   * 16100 regular expression replaces over 1KB of text
   * 8500 16KB files written to disk (cache)
   * 2730 get_record calls on the course table
   * 2290 insert_record calls on the course table
   * 340 update_record calls on the course table
   * 2045000 function calls
   * 14800 16KB files read from disk (cache)
   * 16200 regular expression replaces over 1KB of text
   * 8700 16KB files written to disk (cache)
   * 2730 get_record calls on the course table
   * 1960 insert_record calls on the course table
   * 340 update_record calls on the course table
   * 2083000 function calls
   * 14500 16KB files read from disk (cache)
   * 16100 regular expression replaces over 1KB of text
   * 9100 16KB files written to disk (cache)
   * 2790 get_record calls on the course table
   * 2010 insert_record calls on the course table
   * 330 update_record calls on the course table
   * 2063000 function calls
   * 14500 16KB files read from disk (cache)
   * 16100 regular expression replaces over 1KB of text
   * 9100 16KB files written to disk (cache)
   * 2790 get_record calls on the course table
   * 2090 insert_record calls on the course table
   * 330 update_record calls on the course table
perspective (all caching on)
   * 1403000 function calls
   * 10000 16KB files read from disk (cache)
   * 8300 regular expression replaces over 1KB of text
   * 5200 16KB files written to disk (cache)
   * 5270 get_record calls on the course table
   * 1390 insert_record calls on the course table
   * 220 update_record calls on the course table
   * 1382000 function calls
   * 11000 16KB files read from disk (cache)
   * 8200 regular expression replaces over 1KB of text
   * 5800 16KB files written to disk (cache)
   * 5640 get_record calls on the course table
   * 2140 insert_record calls on the course table
   * 250 update_record calls on the course table
   * 1997000 function calls
   * 14700 16KB files read from disk (cache)
   * 16100 regular expression replaces over 1KB of text
   * 8800 16KB files written to disk (cache)
   * 19620 get_record calls on the course table
   * 2290 insert_record calls on the course table
   * 340 update_record calls on the course table
   * 2003000 function calls
   * 14700 16KB files read from disk (cache)
   * 16000 regular expression replaces over 1KB of text
   * 8800 16KB files written to disk (cache)
   * 19560 get_record calls on the course table
   * 1830 insert_record calls on the course table
   * 340 update_record calls on the course table
   * 2098000 function calls
   * 14800 16KB files read from disk (cache)
   * 16100 regular expression replaces over 1KB of text
   * 8900 16KB files written to disk (cache)
   * 23170 get_record calls on the course table
   * 2030 insert_record calls on the course table
   * 330 update_record calls on the course table
   * 2132000 function calls
   * 14700 16KB files read from disk (cache)
   * 16000 regular expression replaces over 1KB of text
   * 8800 16KB files written to disk (cache)
   * 23270 get_record calls on the course table
   * 2040 insert_record calls on the course table
   * 330 update_record calls on the course table
LoginView 300 (Jmeter with 300 users, 30 seconds ramp, 90% Line

NA

NA

  • 28.1 s / 29.5 s
  • 0% error
  • 27 s / 31.9 s
  • 0% error
LoginPost 300 (Jmeter with 300 users, 30 seconds ramp, 90% Line)

NA

  • 21.5 s
  • 0.11% error
  • 20.4 s / 27.1 s
  • 0% error
  • 30.6 s / 27.7 s (decreasing with each run)
  • 0% error