Now I have succeeded in installing and running moodle on http://drkoops.xs4all.nl/moodle/ it seems to very quite slow.
I am afraid it will not be satifying for my planned experiment with 3 schoolclasses of in total 100 students.
i am running linux redhat 9.0 distribution on a pentium 200 MHZ, 4 GB harddisk and 192 MB memory.
I would suppose that this would be enough to run a small server as I planned to do.
can anyone provide me with some sugegstions to speed the program up, or am i mistaken and is the server able of serving 50 people at a time and does it only look slow?
In your situation I would try these in order:
Upgrade to a recent nightly or wait for Moodle 1.1 as it has some performance improvements over 1.0.9.
Find some more RAM.
Reduce your expectations.
Find a newer computer.
Starting with the first step I am trying to install the php accelerator. I followed all steps of a brilliant site I found on the web: http://i4net.tv/marticle/get.php?action=getarticle&articleid=31.
When I look at phpinfo though, I see the following remark:
| This program makes use of the Zend Scripting Language Engine:|
Zend Engine v1.2.0, Copyright (c) 1998-2002 Zend Technologies
I am afraid this means that I did not install the ionCube accelerator after all. I have put the phpaccelerator.so file in the usr/lib/php4/ directory, together with the other .so files and defined the zend_extension = phpaccelerator.so in the php.ini file.
Did I miss soemthing that you guys know of?
And make sure you restart Apache:
(Oh yes, and the other suggestion to switch services off is a good one - especially X but there may be others. 'redhat-config-services' is a GUI to make this simple.).
I realised my mistake here, still I do not see nay comment on ionCube in my phpinfo. Is it possible that I forget to turn something on?
This was my first mistake installing apache: i did not turn it on, silly me...
Kind regards, and thanks for the stimulating help and interest.
Again I made a small step towards installing PHPA. I found that the apache errorlog gives the following error:
"Failed loading /usr/local/phpaccelerator/php_accelerator.so: /usr/local/phpaccelerator/php_accelerator.so: undefined symbol: _ecalloc"
I am using php accelerator 1.3.3r2, glibc-2.3.2-11.9, php version 4.2.2
Can anyone reflect on this?
Now I have solved the problems with the accelerator. it works fine. I had misclicked the phpa version 1.3.3r2, many versions are named identical but they still differ from php release to php release (see matrix at phpa download site)
Now the accelerator is installed my server keep crashing when I am trying to login to my moodle-site.
index.php?category=1 gives me a lot of action in the server. i hear the harddisk spinning, but nothing ahppens and I cannot enter the server anymore. It is as if my keyboard does not work anymore. Turning the server off is the only solution. This does not speed anything up at all, I am not happy
Hope you have suggestions ...
Unfortunately did I already try it. No debug is called in php.ini.
The careful restart does not help either. The server only starts hanging after the authorisation window. It is something with the authorisation is my preliminary conclusion now...
Any suggestions? Maybe upgrade php to version 4.3.0 ? Is it apache 2.0? I hope not beacuse reinstalling this stuff seems like an awfull lot of work ...
I read somewhere that one should have at least php 4.3.2 with Apache 2.0. Upgrading php to the latest version seems then like a good idea!
Having PHP upgraded to the latest version is good, since it is now quite stable (4.3.2). Using Apache 2.0 is not as good, since it is a big change from Apache 1.3 (mantained) and it is still quite experimental. Besides, the PHP module for Apache 2.0 is officially experimental and not stable.
Regarding MySQL, the latest version, 4.1 (alpha) is also experimental in the latest PHP, and they are creating a brand new library for that. 4.0 seems to be stable, but it is a .0 release, and perhaps it is better to deal with the trusted 3.23 (mantained) untill everything gets more stable.
So it is not as easy as "get the last one", but "get the last stable, trusted, mantained one"
Regarding the problems with PHP Accelerator, if you do not find a solution. Why don't you take a look at other Acceleration options? They are at least as good as PHP Accelerator. Take a look at my message about them above in this discussion (click on "moodle seems very slow" above).
Hope this helps.
After my holidays I continued my personal moodle project.
being a Linux newbie, I decided to wait for the php4.3.2 rpm file to upgrade php. Untill then iw ait with the accelerator.
I am afraid the moodle update is quite complicated as well, reading all the problems people have with it ...
For the time being I have added some RAM. Now I have 128 + 256 MB, instead of 128 + 64 MB. This does not seem to make any difference. Would the problem be my ISDN connection? how can I see that?
Can anyone find a reasonable explanation for that?
Would a new computer solve the problem? 1400 MHz, 512 MB RAM, 40 GB harddisk?
My test-site is at http://drkoops.xs4all.nl/moodle/
I've been to your site just now and yes, it does load very slowly. Almost like it's being served via dial-up.
If it's not a financial hard-ship, yes, buy a new, faster computer. Then let us try accessing your Moodle site and we'll let you know if it's much faster.
I tried your test-site and it did seem a little slower, but it wasn't bad. Since you mentioned you had an ISDN connection, some of the delay could be due to that connection. I am connected at over 1Mbps right now and did a ping (from a DOS prompt) of your site and of another moodle server. Here's what I found:
The time to your server was about 3 times slower(121ms compared to 42ms) and the TTL was roughly 4 times higher (245 compared to 52).
Although you would benefit from a new computer, you may still have a bottleneck in your ISDN connection.
Is your server accessible from other computers on your local area network? If so, you might see how slow it acts from computers on the LAN.
Anyone else have ideas?
Thanks for the tersting! I am very grateful. I will set the address of the site to a local ip and try to access the computer then. it is a very good test that can save me the expense of a new computer instead of a faster connection.
Kind regards, Martijn
I think that your isdn line could be the bottleneck in your system. It seems slow (but acceptable) now (only one ot two concurrent users at a time). But try thinking with five concurrent users. Yo have to split your ISDN (max. speed, one channel, 64kbps). Only 12.8 kbps (1.6KB/s) max. speed for each user.
I think that you should change your network access or host your moodle site in one specialized hosting (Moodle.com, for example). Analyse their costs...
I think that your machine will be the bottleneck only under HEAVY load conditions !! Anyway, any upgrade can help, sure.
See you, Eloy.
moodle.org -> using Moodle -> Servers and Performance -> Forums ->Concurrent Users
Re: Concurrent Users
by Martin Dougiamas - Sunday, 17 August 2003, 09:28 AM
Another data point - until February moodle.org was running fine on a 400Mhz Celeron with 256Mb RAM and Redhat 7.0 - no load issues at all.
Are you running your own server or are you using an ISP?
I'm running Moodle on an ISP and had no problems with the speed sofar. My experience is that Moodle (with PHP and MySQL) is one of the fastest configurations. However it depends on:
- the other customers of your ISP
- your bandwith (if you are running your own server)
- number of concurrent users logging on your moodle
All these factors could affect your speed.
You could try to get the speed-specifications from your ISP.
One common mistake if its really slow. Do you run a screensaver that takes alot of power ?
In that case you might want to turn screensavers off.
Glad to hear that you got your Moodle site working. I'm very interested in what you're trying to do here. It's very easy to suggest throwing more resources (more money) at most of the issues encountered with technology. The reality for the huge majority of the world's population is that a large number of them have not even made their first phone call yet! The Moodle CMS could be an answer to the educational requirements of millions of people, and I believe it will be, if it can be implemented affordably. Another reality is that if this is to happen this population will be using components discarded by the first world. Maybe we can present them with these discarded components and then we could present them with content and expertise that they will then use to teach their population some of what they will need to improve their circumstances.
There are millions of these old computers available for practically nothing. In Canada you can buy a P266 / 192MB ram / 6GB HDD for about $70 which means that almost anybody can put a Moodle site up for their own institution, regardless of the financial resources available to them. Yes, it will be slow relative to someone with more resources. But, this can be a way for those without ample money to get their feet wet in the world of distance learning. This computer can be setup to run Moodle and then delivered to interested teachers to learn Moodle on. The low cost makes this easy to do. Most will likely decide to use a hosting service as this is a very affordable way to get the job done with the least possible issues. Those that are able to harness the full potential of this CMS may choose Moodle.com as this will be the ultimate in Moodle friendly servers. These will be the teachers that have time to teach but not the time to fuss with the logistics of keeping their Moodle site working at top efficiency and with the latest features.
This is a network that I've built just to learn networking. I'll try to learn FreeBSD as the key to my little project is setting up learning environments that are affordable and within the reach of all interested teachers, not just wealthy ones with easily available sources of funding. An opensource OS and CMS/LMS/VLE and affordable hardware that lets teachers try distance learning is my objective. If the teacher then decides to go further and raise some funds to invest in more capable hardware and teach with Moodle then I'll consider this a "mission accomplished".
My Etherfast network:
4 port router
8 port switch
Most of this would be considered junk by today's standards but would be much appreciated by millions of people who still haven't even seen a telephone and may not even know that man has already walked on the moon.
Their is a great deal of information on the subject of server optimization in the following thread: http://moodle.org/mod/forum/discuss.php?d=1928
and the thread even comes with fries
I'm interested in learning to run Moodle on the most affordable system available and will try to document my progress as this exercise continues. The fact that the Moodle lead developer has set a blistering pace for development and is ably assisted by so many means that in the years to come this will be easier to accomplish. I believe Moodle will have what it takes to run on the very low-tech system and the newest, most advanced, system available. This will make Moodle the most widely accepted and utilized CMS in the world and will serve the needs of millions of people in many countries and in many economically diverse circumstances. My apologies for the extremely long post.
Moodle is based on Apache, PHP and MySQL, so, it takes a lot of memory and CPU to run (each page has to be interpreted in real time and has a lot of calls to de MySQL database). Martin says that a possible starting point of memory for Moodle is 512MB (you only have 192) and your main problem is your CPU (just a Pentium at 200MHz), I guess it should be no less than a Pentium III at 1000MHz.
So, my opinion is that you have 3 options:
1) Buy a new server. You can get a very good computer on the market for about 500/$. Just make sure that it has at least 512MB of memory (if not, upgrade it). A single 512MB memory module, at 400MHz (the best and most expensive) costs about 100/$. So, you could get a very good server for just about 600, and it should last for about 3-5 years. I think it is a good investment.
2) Use a good hosting for Moodle. You have 2 new options:
a) Get a very cheap and reliable one for 5$/month.
b) Get the best hosting service, optimized just for Moodle, with installation, customization, administration and support form the very creator of Moodle for 50$/month.
3) Keep your existing server running slow. But please, do not complain about Moodle, complain about your hardware.
Thank you all gfor the extensive answers and suggestions. It was never my intention to complain about Moodle, I think it is a wonderful piece of software! I only was hoping that you might have suggestions to speed the thing up, without spending all this money. My project is an individual initiative of a lonely teacher (;-P) trying to get the homework checks automated among other plans I have to implement more distant learning in my classes.
I have come up with the idea now to downgrade my Linux version to redhat 5.2 Do you think that might help me? Or is the computer then still too slow for the php and mysql activities?
Kind regards and again, thanks a lot for your interest in my little experiment
You were obviously just asking for advice as you are new to Moodle and a Linux newbie as you mentioned here: http://moodle.org/mod/forum/discuss.php?d=1774
Moodle is capable of running, albeit slowly, on equipment similar to yours. This can be a great way to learn about servers, the issues involved in setting up and maintaining them and Moodle. Anyone that will spend three hard days installing Linux and not give up will do just fine. The fact that you are surrounded by some of the most helpful and generous people on the internet makes it that much easier to learn, and contribute, to the process of learning how to use Moodle. Stay with your plan to setup a Moodle on the 200MHz and see how it goes. At least that way you'll be able to spend your upgrade money wisely based on your own experience and the needs of YOUR users. Maybe you'll even want to share a few tricks with the rest of us Unix newbies on a budget.... Congrats on your successes so far.
John (trying to learn FreeBSD) Eyre
1) Red Hat does not support any system before 7.1, and the normal way to keep systems upgraded is applying patches until a new version is released and then upgrading to that version. This is very important, since it is critical for a server to have its operating system up to date. If not, you will find it quickly cracked, and it is likely that you loose all your data.
2) You must make sure that you meet the software requirements, specially having PHP 4.1.0 or upper version, Apache (still better 1.3.x, since 4.0 has still some problems with PHP) and MySQL. All these applications have to be updated also, for the same reason, and they do get resources.
So, I would better try to reduce the Red Hat services to the most, deactivating everything that is not really necesary and unistalling X Window, KDE and Gnome (they take most of the resources).
You can also try to find another Linux distribution, there are some that fit in even in a single floppy! The critical point there is to assure that they are mantained and you can keep them up to date, and also run latest versions of Apache, MySQL and PHP.
You can also try FreeBSD, as John is doing. It is a very reliable operating system, similar to Linux (I think that Yahoo uses it for their servers). I think it also takes less resources and there are also mini versions (perhaps picoBSD, miniBSD,...?).
You have plenty of options to choose from: buying a new computer, hosting, optimizing your server, finding a small Linux, trying FreeBSD, keeping slowlyness,... It is up to you. I hope you improve your Moodle service. If so, please let us now, to learn from your experience.
We are running a Windows 2000 Adv. Server and EASY PHP, we host 35 courses with more than 500 students concurrently.
Although it is a 2 GIG AMD proc, with a GIG of RAM, However, Ive never seen the box utilize more than 350 Megs RAM at any on time----eaven when we did a huge load test during our jobfair--
We have load tested the system up to 2000 students live during a "jobfair" course we did about 4 months ago----BRAVO again to the Martinman!!!!
I am very surprised, since right now I am using Windows XP Home with some simultaneous applications plus apache, php, mysql, antivirus and firewall, and it is using 299MB of RAM. If you handle 2000 students with just 350 RAM that is pretty cool!
Here's another possibility -- find another old PC and install and run your MySQL from there. That way you can distribute the processing overhead across two CPUs, not one.
After all I have a moodle version 1.1. running quite ok on my old pentium1, 200 MHz ,64 MB internal memory. Linux dist: redhat 9.0. I have installed an accelerator for php and that made a great difference.
i use moodle to coach my highschool kids in pysics homework. these are about 100 kids, never logging in together.