Hi , Nice to meet you too
From your specs it seems like you have more than enough resources to handle 300-600 concurrent users. You mentioned wanting to test the performance of your database server. Is there a particular problem with your database? If yes, please check -
https://moodle.org/mod/forum/discuss.php?d=450157 - Ken is an expert he might be able to guide you to the right tool.
Going back to JMeter:
Instead of following the https://github.com/moodlehq/moodle-performance-comparison
I created the test environment :
#dnf install java-11-openjdk java-11-openjdk-devel
#git clone ---->jmeter.git
You might want to add the jmeter to path --> echo 'export PATH="$PATH: /--->/jmeter/jmeter/bin"' >> ~/.bashrc source ~/.bashrc
-----
Now you setup your test environment. It is time to create JMeter load test.
The steps to create Moodle load test -> JMeter test plan generator
--
Personally I found changing the values made a huge difference
Also please note you do not need all test steps , you can start with a simple one for example login browse a course log out. This will give you an idea.
Delete the ones you do not need. I think intially if you removed forum you will get a better idea where your test is failing.
Once you configured the test plan you need to run it from your test machine you configured earlier making sure the firewall configured to accept these connections from and jmeter.bat updated. I set mine to:
Now you can run your test but must keep an eye java resource usage in test server. See my test server when multiple JMeter threads are running:
Now you can run your test but must keep an eye java resource usage in test server. See my test server when multiple JMeter threads are running:
You can also use a Jmeter quiz test -> https://moodle.org/mod/forum/discuss.php?d=425057
The above test is very efficient. Make sure you created your test course, quiz and users.
-----
Having said all this, I recommend you get the core server environment settings correct. All the tests above did not make my Moodle production environments fail safe. There is always something that creps up. For example excessive logstore table size pushing the database server( in my case MariaDB) to its limits. Apache-Nginx issues for example one might prefer event for prefork for its speed, however in my opinion stability trumps over speed every time.
Let me know how you get on
Best of luck