Moodle Performance

Moodle Performance

by Eugene Yap -
Number of replies: 7
Hi there

   I would appriciate if somebody could give me some comments on this server specs.

Currently we have a server
Pentium 4 2.4 Ghz
512MB Ram
2 hard disk in Raid 1 configuration

we have tried a quiz with 200 concurrent users, the event was a flop. We have now upgraded the ram to 2GB and we are going to give it another try with 100 users and hope that the machine holds up.

The other upgrade path is to use a 2 server setup, 1 doing the mysql and the other doing apache.

which of the 2 server should be a higher end machine (we are thinking of getting a dual Xeon with 2 GB ram and using the existing machine).

With this set up has anybody tried what is the load which it can take?

Thanks in advance.
Average of ratings: -
In reply to Eugene Yap

Re: Moodle Performance

by Dave Bethany -

First and foremost, you don't have nearly enough memory.

A single 2.4 P4 with 2 gig would be really taxed with 100 concurrent users, much less 200.

The other thing you have to consider is your bandwidth. 200 people moving files back and forth can eat up a lot of bandwidth.

I'm selling a dual Xeon poweredge with 2 g memory, if you are interested.

Dave

In reply to Eugene Yap

Re: Moodle Performance

by Martín Langhoff -
Some tips:

- More memory. Lots more.

- Split the load across more disks -- tune aggressively for the database. I've posted some good links about how to tune your DB server.

- Tune Apache -- search for maxclients.

- Monitor where the bottleneck is so you spend money and effort where it matters. Again, if you search the forums I've posted about good monitoring tools.

- Do split DB from Apache AND get the high-end machine for the DB server.

- Do search around this forum a lot, and read up on monitoring and tools.

- Run at least linux 2.6.14. with CFQv3.
In reply to Martín Langhoff

Re: Moodle Performance

by Kenny Backus -
Don't forget a PHP accelerator. I've gotten a x3 performance increase just by turning one on with no other tuning. I would recommend APC or eAccelerator. APC has better support for PHP 5.1.x a better backend interface, as well as being in PECL, which means it should have better long-term support and is less likely to stop being developed. I've noticed on my own site that eAccelerator is a bit faster, though.

I'm curious about the possible performance boost from putting MySQL on a seperate box. In my benchmarks I've never seen mysqld use more than 10% of CPU while Apache/PHP was hogging the rest. I would have figured that, because of this, network bandwidth would be a bigger bottleneck.
In reply to Eugene Yap

Re: Moodle Performance

by Eugene Yap -
Thanks for all your replies and feedback. Another option which we are looking at could be to use a cluster for the mysql, maybe 2 or 3 not so high end servers. P4 3Ghz with 2GB ram for the each node. Would I be better off with 1 big box or a few (2 to 3)  smaller machines to share the load?


Thanks
 
In reply to Eugene Yap

Re: Moodle Performance

by Randy Obert -

A single well tuned server for the db will handle tremendous loads and then a number of lesser servers to handle the Apache duties.  I have been involved with these setups for sites with over 100K users running intensive db apps.

I would read up on the above links to "Tuning" on Apache and mysql. I have seen reductions of 50% or more on servers running Mysql just be setting up the query cache. A small thing that can reap large gains.