Skip to content

Commit d68da7a

Browse files
committed
Documentation: Update documentation regarding the Redis requirement - refs #6858
1 parent ffc01ca commit d68da7a

2 files changed

Lines changed: 14 additions & 9 deletions

File tree

public/documentation/installation_guide.html

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ <h3>2.5. Installation wizard</h3>
9696

9797
<h3>2.6. Sessions and Redis</h3>
9898
<a id="web-install-sessions" class="anchor"></a>
99-
In this beta version, there are known issues with sessions not getting updated fast enough, which can be solved (temporarily) by using a Redis server. Check the command line instructions for more about this. This is a temporary situation that we expect to fix before the stable release.
99+
Redis is an in-memory non-relational database server that can be used to manage PHP sessions. Under high loads, PHP sessions management can be a bottleneck. Using Redis can considerably alleviate that bottleneck but should not be an issue for low to moderate uses (up to 10 *simultaneous* users or so). Check the command line instructions for more about this.
100100

101101
<h3>2.7. Clean up</h3>h3>
102102
<a id="web-cleanup" class="anchor"></a>
@@ -111,18 +111,22 @@ <h2>3. Command line installation</h2>
111111

112112
<h3>3.1. Software stack</h3>
113113
<a id="cli-install-stack" class="anchor"></a>
114-
<p>Assuming you are using a dedicated Ubuntu 24.04 LTS, these commands should help you have the software stack installed in a breeze. Otherwise, please review the requirements above and make sure they are met before moving on to the next section.</p>
114+
<p>
115+
Assuming you are using a dedicated Ubuntu 24.04 LTS, these commands should help you have the software stack installed in a breeze.
116+
Otherwise, please review the requirements above and make sure they are met before moving on to the next section.
117+
Please note Redis is optional. It is included for efficiency reasons for self-managed servers, but can be skipped on shared hosting.
118+
</p>
115119
<pre>
116120
sudo -s
117121
apt update && apt -y upgrade
118122
apt -y install apache2 libapache2-mod-php8.3 mariadb-client mariadb-server redis-server php8.3-{apcu,bcmath,curl,exif,gd,iconv,intl,ldap,mbstring,mysql,opcache,soap,xml,zip,redis}
119123
a2enmod rewrite
120124
cd /var/www/
121125
mkdir chamilo
122-
wget https://github.com/chamilo/chamilo-lms/releases/download/v2.0.0-beta.1/chamilo2.0.0-beta.1.tar.gz
126+
wget https://github.com/chamilo/chamilo-lms/releases/download/v2.0.0-rc.1/chamilo2.0.0-rc.1.tar.gz
123127
# about 400MB
124-
tar zxf chamilo2.0.0-beta.1.tar.gz
125-
rm chamilo2.0.0-beta.1.tar.gz
128+
tar zxf chamilo2.0.0-rc.1.tar.gz
129+
rm chamilo2.0.0-rc.1.tar.gz
126130
cd chamilo
127131
touch .env
128132
chown -R www-data: var/ config/ .env
@@ -156,6 +160,7 @@ <h3>3.3. Web server</h3>
156160
Here is an example Apache vhost configuration file for an installation on the http://my.chamilo.local/ URL (replace all values between brackets, including the brackets, to your custom values).<br>
157161
It includes PHP settings which will only affect this vhost. If you prefer to set those PHP settings in php.ini, you are welcome to do so.<br>
158162
We also assume you will be using a default Redis installation to manage sessions (see notes in the web panel install section).<br>
163+
Reminder: Redis is optional. If you don't use it, do not use the lines about "session.save_handler" and "session.save_path" below.<br>
159164
<pre>
160165
cd /etc/apache2/sites-available
161166
vim [my.chamilo.local].conf
@@ -478,7 +483,7 @@ <h3>6.5. Redis</h3>
478483
want to install the PHP Redis extension from the official PHP website, for example (adapt PHP and Redis version numbers)
479484
https://downloads.php.net/~windows/pecl/releases/redis/6.*.*/php_redis-6.*.*-8.3-ts-vs16-x64.zip
480485

481-
This is not necessary to install Chamilo (so you can do it afterwards or never at all if you don't experience session issues).
486+
This is not necessary to install Chamilo (so you can do it afterwards or never do it at all if you don't experience session issues).
482487

483488
Download, unzip and place the .dll file into C:\wamp64\bin\php\php8.3.*\ext\
484489
then add "extension=php_redis.dll" at the end of C:\wamp64\bin\php\php8.3.*\php.ini
@@ -501,7 +506,7 @@ <h3>6.5. Redis</h3>
501506
</pre>
502507

503508
Inside your WampServer configuration, in the httpd-vhosts.conf file,
504-
add the following lines *inside* the &lt;VirtualHost&gt; tag:
509+
add the following lines *inside* the &lt;VirtualHost&gt; tag (only if you use Redis):
505510
<pre>
506511
php_admin_value session.save_handler "redis"
507512
php_admin_value session.save_path "tcp://192.168.1.100:6379"

public/documentation/optimization.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ <h2>Avoid dev mode</h2>
2323
<h2>Sessions</h2>
2424
Chamilo 2 uses sessions to store user data between requests. Sessions are stored on disk by default.<br>
2525
In comparison with Chamilo 1, Chamilo 2 uses many micro-service-type calls to retrieve data from the system and repaint parts of the pages as the underlying data changes.<br>
26-
This has the damaging effect of requiring much more accesses to the session files, which can slow down the system significantly or generate losses of session (the system acting as if you are not logged in).<br>
27-
To remove this impact, make sure you use a system to store sessions that will have a very small footprint and be able to manage session accesses very quickly (Redis, Memcached, etc.). This is described in the installation guide.
26+
This has the negative effect of requiring much more accesses to the session files, which can slow down the system significantly or generate losses of session (the system acting as if you are not logged in).<br>
27+
To remove this impact, make sure you use a system to store sessions that will have a very small footprint and be able to manage session accesses very quickly (Redis is likely the best solution here). This is described in the installation guide.
2828

2929
<h2>Database</h2>
3030
Chamilo 2 uses a database to store most of its data (except for files). This means the database is very commonly used and can be a bottleneck in some cases.<br>

0 commit comments

Comments
 (0)