- Add a custom policy for Moodle with the “create cache policy” button under the Custom policies section:
The new cache HEADERs cache policy should include the following headers and setting
- Now go to the “Origin request” tab and create a new origin request policy
With the following headers and settings:
- Now go to the “Response headers” tab and create a new Response headers policy
With the following headers and settings:
You can also turn ON the Content-Security-Policy, if you do not have teachers uploading JS code for special Moodle questions that you do not wish to block.
And also the X-Content-Type-Options “nosniff”, if you do not have old plugins that will break.
- Now go back into you CloudFront distribution that is connected to your Moodle ASG target (called by CF “origin”), and then on the Behaviors tab set the above 3 new custom policies as follows:
moodlehq/moodle-performance-comparison: Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.
Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.
Source: moodlehq/moodle-performance-comparison: Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.
KeyDB – The faster Redis Alternative
KeyDB now has support with multiple masters when replicating, and It’s a drop in replacement to REDIS.
When KeyDB connects with multiple masters it behaves differently than with traditional replication:
Multiple invocations of the replicaof command will result in adding additional masters, not replacing the current one
KeyDB will not drop its database when sync’ing with the master
KeyDB will merge any reads/writes from the master with its own internal database
KeyDB will default to last operation wins
This means that a replica with multiple masters will contain a superset of the data of all its masters. If two masters have a value with the same key it is undefined which key will be taken. If a master deletes a key that exists on another master the replica will no longer contain a copy of that key.
Moodle Video Solutions
Source: Moodle Video Solutions
VOD & Moodle
Putting together a DIY VOD streaming solution for Moodle based on NGINX + Kaltura-streamer + WordPress + Moodle.
Plugins used in the solution:
Source: A DIY VOD streaming for Moodle
catalyst/moodle-local_smartmedia: Moodle LMS Smartmedia local plugin
Smart media aims to enhance Moodle’s processing and delivery of multimedia while simplifying the process of managing multimedia for teachers and students.
The smart media plugins in Moodle aim to solve the following two user stories:
As a teacher I have a video that works on my local device and I want to make that video available to my students in a suitable format, by adding it to any rich text area in Moodle. Without the need for me to do any other operations on the video apart from uploading to Moodle.
As a student I want to be able to view any video on my chosen device; added to a rich text area in Moodle by a teacher. Regardless of the environment I’m accessing the video or my bandwidth limitations.
Smart media leverages cloud services provided through Amazon Web Services (AWS) in order to conduct video transcoding into required formats and provide additional analytics functionality for multimedia.
Source: catalyst/moodle-local_smartmedia: Moodle LMS Smartmedia local plugin
catalyst/moodle-tool_excimer: A Moodle tool to find bottlenecks in your code safely in production
This is a Moodle admin plugin that provides developers with insights into not only what pages in your site are slow, but why. It uses the the Excimer sampling php profiler to so.
It is complementary to the profiler in core which uses Tideways. The key downside to Tideway is that it has a substantial performance hit and can’t be used in production to capture everything and only later decide what to keep or analyse.
This plugin was developed by Catalyst IT Australia: https://www.catalyst-au.net/
Source: catalyst/moodle-tool_excimer: A Moodle tool to find bottlenecks in your code safely in production
All you need to know about LTI in Moodle 3.9 by Claude Vervoort – YouTube
More videos: An instructional video repository of LTI related subjects
Source: Claude Vervoort – YouTube
Autoscaling Moodle stack for Postgres and MySQL databases
This work is mostly based on Paulo Teixeira’s work. It adds several configurable features and switches to a web stack with caching. It also uses Azure resources for Redis, ObjectFS and Databases.
After deploying, these templates will provide you with a new Moodle site with caching for speed and scaling frontends to handle PHP load. The filesystem behind it is mirrored for high availability and optionally backed up through Azure. Filesystem permissions and options have also been tuned to make Moodle more secure than a default install.
How to Install Moodle Learning Platform with Nginx in CentOS 8
In this article, you will learn how to install the latest version of the Moodle Learning Platform with NGINX and MySQL/MariaDB database on CentOS 8 .
Source: How to Install Moodle Learning Platform with Nginx in CentOS 8