User site capacities questions

This forum post has been removed

Number of replies: 27
The content of this forum post has been removed and can no longer be accessed.
In reply to Deleted user

Re: User site capacities questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Hi Gio

You're a mathematician, right?
smile

I don't know who invented all those formulae, but the one I know is highly unmathematical: Read https://moodle.org/mod/forum/discuss.php?d=313394#p1258026 !

Try your luck with https://docs.moodle.org/29/en/Performance_FAQ. Notice the /29/, if it the version you are going to install (you were looking at /20/).
In reply to Deleted user

Re: User site capacities questions

by Usman Asar -
Picture of Plugin developers Picture of Testers
Gio,

The forums have been online since moodle existed, good thing you did your research fully before putting question - I honestly admire your efforts.

Now, just to clear your understandings, that 50 user per GB was applicable until Moodle 1.9, it came down to 20 users per GB as Moodle 2.0 stepped in, and even lower now, as mentioned 10-20 user per GB. (I must add, if other considerations are to be made, like use of SSD Drives now in servers, then they can come up to a more realistic figure allocating higher number of users per GB)

Now this figure 10 - 20 is really dependent upon what your users will be doing, the lowest figure of 10 is for high database I/O's activities (Like Chat, Quizzes) and upper limit of 20 for (Logged in users browsing site, downloading files, posting on forums etc etc), the figurue of 50 per GB may still can stand true if you have opened your Moodle for guests and they dont have to authenticate themselves to use the site.

now, assume you have users that do mix of activities (Like taking quizzes, posting on forums), then a good figure for you to consider would be 15 user per GB (median for 10-20).
BUT, that allocation of Memory is purely based on one factor, i.e: no other alteration is done to the server, means you are using 1 SATA drive with mechanical spindle, so you are actually effecting the drive's throughput there, so if you have a good overall system configured (Like RAID, and SSD Drives, and Database on separate server/drive), then you can even allocate 30 users per GB taking quizzes without bringing down your server to its knees.
Average of ratings: Useful (1)
In reply to Usman Asar

Re: User site capacities questions

by Andrew Lyons -
Picture of Core developers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers

Hi Usman,

I'd love to know where these numbers really came from as they seem absolutely nuts - 10-20 users per GB!? What is this based upon?

In my honest opinion, those numbers are bogus and likely based on a single person's infrastructure and will likely not be relevant to most out there.

The hardware requirements are based upon a whole range of things, including (but not limited to):

  • expected workload (quantity of quiz vs. forum vs. resource vs. scorm vs. etc.)
  • expected shape of workload (all between 9am and 5pm, or spread throughout the 24 hour day?)
  • server OS
  • database server
  • database tuning
  • web server
  • load balancer present?
  • additional cache infrastructure
  • disk types, counts, speeds, bus type + speed
  • network infrastructure (100Mb vs. 1Gb vs. 10Gb)
  • age of server + components (5 yr old Sandy Bridge vs. Skylake for example)
  • infrastructure design (3-tier vs. single stack vs. ???)

We simply cannot advise that you will need 50-100MB per user on your server.

In order to determine your loading capacity, you need to perform benchmarks, analyse the bottlenecks in your build, improve, etc.

You've also got to determine what you mean by '3,000 approx max browsing user'. Is that 3,000 simultaneous, or 3,000 unique users accessing the site at some point during a 7 day period? They are very different definitions.

Andrew

Average of ratings: Useful (5)
In reply to Andrew Lyons

Re: User site capacities questions

by Usman Asar -
Picture of Plugin developers Picture of Testers
Hi Andrew,

I'd love to know where these numbers really came from as they seem absolutely nuts - 10-20 users per GB!? What is this based upon?

If you would have started reading from top, its not just me mentioning this but Gio too. regarding your query where these figures came from? here is the link, you'll find the general rule of the thumb with 10-20 users figure in hardware section, attaching screen shot as well (highlighted part), so these numbers come from Moodle's own documentation.

Link to documentation: https://docs.moodle.org/29/en/Installing_Moodle

and screen shot highlighting



Regarding other things you mentioned (I have no doubts about their invalidity), I have mentioned  in my last paragraph, that this figure (10-20 users) is based on simple server setup using one drive. While Gio is only concerned about the Memory (as mentioned in his post using formula) that is why I didn't mention anything extra other than what he really wanted to know.
In reply to Usman Asar

Re: User site capacities questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
"Disk space: 160MB free (min) plus as much as you need to store your materials."
https://docs.moodle.org/29/en/Installing_Moodle#Hardware

'du -sh moodle29/' gave mit 502 MB!
In reply to Visvanath Ratnaweera

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

That would be a site cloned from Git I expect...

In reply to Howard Miller

Re: User site capacities questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
Oh, dear! Without .git/ it (2.9) came down to 185 MB.

From a user's point of view, the Moodle (2.9) directory is 502 MB, assuming he wants to move forward. (Some are holding breath till 10. November, I imagine.)
wink
In reply to Visvanath Ratnaweera

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

Clearly that statement about disk space is ridiculous. I'll change it to "something bigger"

In reply to Howard Miller

Re: User site capacities questions

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers

It's usually safe to say "you'll need a bigger disk". Nice idea about the case studies Andrew.

In reply to Marcus Green

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

I also said, "just buy loads of memory". That's a metric "loads" by the way wink

In reply to Howard Miller

Re: User site capacities questions

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers

And a massive SSD, and has anyone tried putting it all in a Beowulf cluster. I'll get me coat. 

In reply to Usman Asar

Re: User site capacities questions

by Andrew Lyons -
Picture of Core developers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers

Usman,

You mis-interpret me - my apologies. I'm not asking where in the Moodle docs it came from, but where did it come from to make it into the Moodle docs in the first place. It's likely based on the experience of one person who commented at some point that, with their setup, these were the hardware guidelines they decided to use.

I believe that this spurious, oft-quoted, figure has now been removed from some of the documentation.

What would be more helpful in my opinion is if people were to create case-study pages detailing the setup that they use, complete with an idea of the number of users on their system, some notes on the typical workload, and their thoughts (both positive and negative).

Andrew

Average of ratings: Useful (3)
In reply to Andrew Lyons

Re: User site capacities questions

by Emma Richardson -
Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Plugin developers

It might not be a perfect metric but it is nice to have some place to start.  We will never be able to get specific enough for every set up but giving out a rough estimate is not a terrible idea.

I think most people understand that the 10-20 users per GB is not the be all end all and in fact 10-20 in itself indicates a lot of variance right there.

The documentation section is a wiki - if you don't like it - write something better!  A page of case studies might be a great place to start - people could simply post their set ups and performance tests and that would be really helpful for new admins coming in.  I would keep it simple and maybe create a "template" of how each person should enter their data.

Perhaps Andrew could start us off! wink

Average of ratings: Useful (3)
In reply to Emma Richardson

Re: User site capacities questions

by Andrew Lyons -
Picture of Core developers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers

Thanks Emma,

Once we've rolled 3.0 and I have a bit of spare time, I'll see what I can put together.

I currently don't run any live Moodle sites (unless you count MoodleCloud), but I've run a few pretty large systems which I've posted, and blogged about a fair amount.

Andrew

In reply to Andrew Lyons

Re: User site capacities questions

by Usman Asar -
Picture of Plugin developers Picture of Testers

Andrew, honestly no hard feelings here, as I still remember smiling when I was typing the post thinking that no one actually revised the documentation apart from memory since the start. I should be one apologizing if I made you feel like I have misinterpreted your reply - I haven't that time, still now have no disagreement on your post as It's reflecting whatever I wanted to write, but of course you wrote in explanatory terms.


In reply to Usman Asar

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

It depends what you mean by "the start". I completely re-wrote all the installation documentation some time ago. It was *really* dreadful before tongueout

I had to say something about server requirements - "what do I need to run Moodle", is hardly an unreasonable question and it is inevitable that a lot of users will not be server administrators however much we wish they were. It does look a little sad now, but then again we still encounter users trying to run Moodle on extremely minimal VMs. 

In reply to Howard Miller

Re: User site capacities questions

by Usman Asar -
Picture of Plugin developers Picture of Testers

Then its time to add an additional segment, while renaming current as "Required Hardware" and adding "Recommended Hardware", as unlike computer based application where there will be one-one interaction between application and user, web based application are more dependent on numbers of users accessing it so a flexibility in terms of what hardware is required to run the application and what will be required to support "n" number of users.

As far as minimum recommendation is concerned, where its mentioned  2-core CPU, I have comfortably ran on 1-core/1GB RAM even with Windows Server GUI on top with performance surpassing the shared host's allocation of resources.

In reply to Usman Asar

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

What I don't want to happen is for the installation instructions to become much longer. A link to a new page with more information about server sizing is appropriate but we still need to consider if that could be confused with the Performance pages. 

Keeping the installation instructions reasonably short and direct is pretty important IMO

"Most" users won't be building big, load-balanced instances (for example). For most people even talking about things like "concurrent users" is a pointless exercise. wink

The CPU requirement is even harder to answer that the amount of memory. 

In reply to Howard Miller

Re: User site capacities questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
+1

Apart from all that, during the first installation rarely anybody thinks of performance backlash!

[/rant] The fundamental problem is people don't read. Reminding them of the documentation, giving links, runs into a void, since other PHMs jump in and type all those anew in to the forum.

If you haven't noticed, you are looking at an example!
In reply to Andrew Lyons

Re: User site capacities questions

by Visvanath Ratnaweera -
Picture of Particularly helpful Moodlers Picture of Translators
People want simple answers to simple questions. It an irony that experts can not answer the simplest question. Therefore they sometimes pluck figures out of the air!
smile
In reply to Visvanath Ratnaweera

Re: User site capacities questions

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
People often want simple answers to questions that are not simple.
In reply to Andrew Lyons

Re: User site capacities questions

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

It was me!!

They are no more than an educated guess based on looking at the performance on some real sites and applying some pessimism. 

I know they are bogus, but you have to give people a place to start because they won't stop asking. 

To be even more blunt, people who turn up here and ask something like, "I am creating a site for 500,000 users all taking a quiz at the same time" are clearly insane. Yet, still they come. 

Average of ratings: Useful (2)
In reply to Howard Miller

Re: User site capacities questions

by Marcus Green -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers

I have been reading about this for so long, I knew those numbers could be traced back to you Howard smile

If these beeeelion user sites are real, and assuming they are not registering them at Moodle HQ. We are dealing with the most used software on the planet (Dr Evil style little finger in corner of mouth)

In reply to Howard Miller

Re: User site capacities questions

by Andrew Lyons -
Picture of Core developers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers

Thanks Howard,

Note: I wasn't trying to pick upon you - hope you didn't take any offence.

The issue I have with this figure is that people are basing their hardware requirements on it, and then going out and spending vast sums of money without doing proper requirements analysis. It's being seen as the gospel for Moodle hardware requirements rather than advice.

One of the other contributors to this forum has been running Moodle on his Raspberry Pi as an experiment to prove that you can get by with relatively few hardware requirements. He's been posting on the site about the setup, including configuration + hardware details. I'm not sure what his concurrency is like (probably relatively low), but it is possible.

Andrew

In reply to Andrew Lyons

Re: User site capacities questions

by Paul Verrall -

I have found the go to answer of 'MOAR RAM'  is often just wrong (in the moodle software stack) and often I see sites bound by I/O or CPU, often due to an 'out the box' configuration, rather than memory/swapping. 

Unless your server is already swapping chances are it's not going to do anything with that extra memory (other than maybe some file caching) unless you configure something to use it, e.g. can it now handle more HTTPd clients or allow your database keep more/bigger tables in memory or maybe keep more data in memcached? All of these will need configuration changes to benefit.

If you are adding RAM, make sure you know why you are doing it and what part of the stack needs it as well as how to configure it to make best use of it. Otherwise you are just wasting money.


Average of ratings: Useful (1)