Guía rápida de optimización de Moodle en español

De MoodleDocs

Mejorar el rendimiento de moodle

El rendimiento de un servidor Web es importante, pero en una plataforma de formación es crucial. La percepción del alumnado sobre la calidad de nuestros cursos puede verse deteriorada si durante su formación la plataforma responde de forma lenta o inesperada.

Debemos tener en cuenta que el rendimiento de moodle, como otras herramientas, reside en gran medida en la base sobre la que está instalada (memoria física, discos duros, sistema operativo, base de datos, protocolos de seguridad, etc. …). Esta guía pretende ser una referencia para el administrador de un sitio web, independientemente de las mejoras que pueda realizar en esa base.

A continuación se enumeran una serie de opciones, que han sido contrastadas en varias instalaciones y que pueden mejorar el rendimiento final de la plataforma, en términos de velocidad y carga del servidor. Sin embargo, todas y cada una ellas, deben ser probadas con precaución en cada instalación, pues los resultados pueden diferir, según sea el sistema operativo, la versión de moodle y la cantidad de usuarios que soporta.



Opciones de rendimiento

Existen unos parámetros que afectan al rendimiento directamente, y aunque los valores por defecto están bien para la mayoría de sitios en producción, quizás se deba ajustar en sitios más pequeños. En zonas donde el alumnado tenga una velocidad de acceso reducida, se deberá ajustar “cURL” a valores más altos y “curltimeoutkbitrate” a valores más bajos:

Administración del sitio ► Servidor ► Rendimiento [Site administration ► Server ► Performance]

guia rendimiento 1.jpg



Cachés

La primera caché importante será la de AJAX/ JavaScript, puesto que si tenemos activado estos elementos en nuestra plataforma, usar su caché será indispensable

Administración del sitio ► Apariencia► AJAX y Javascript. [Site administration ► Appearance► AJAX and Javascript]

guia rendimiento 2.jpg

Otra caché muy importante son las cadenas de texto, que deberían estar siempre activadas, entretanto, algunas veces, por motivos de actualización o programación se suelen desactivar:

Administración del sitio ► Idioma ► Ajustes de idioma [Site administration ► Language ► Language settings]

guia rendimiento 3.jpg

La siguiente caché afecta realmente solo a algunos sitios que utilizan el bloque RSS con cierta cantidad de orígenes diferentes, en otro caso, será indiferente configurarlo.

Administración del sitio ► Extensiones► Bloques► Canal RSS remoto [Site administration ► Plugins► Blocks► Remote RSS feeds]

guia rendimiento 4.jpg


Otra caché que afecta solo a algunos sitios, los que utilizan repositorios externos con mucha frecuencia, puede ser probada con diferentes valores.

Administración del sitio ► Extensiones ► Repositorios ► Ajustes comunes del repositorio [Site administration ► Plugins► Repositories► Common repository settings]

guia rendimiento 5.jpg



Filtros

Una caché muy olvidada es la de los textos filtrados. Aunque en nuestro servidor no tengamos activado ningún filtro, estas opciones pueden mejorar el rendimiento, en tanto que muchos ‘scripts’ verifican estos datos. En épocas que no se realizan tareas de actualización de contenido ni modificaciones en las actividades, este valor puede aumentarse sin recelos. En todo caso, al realizar las pruebas, si se sube demasiado, enseguida se notará que las cadenas de texto no son actualizadas adecuadamente.

Administración del sitio ► Extensiones► Filtros► Ajustes comunes de filtro [Site administration ► Plugins► Filters► Common filter settings]

guia rendimiento 6.jpg


También se puede establecer el tipo de archivo al que se aplicará un filtro, cuando se está creando una nueva actividad. Esta opción suele mejorar el rendimiento en sitios que utilizan mucha documentación creada en programas externos, como PDF, DOC, ODB, etc. … (Ojo, la traducción ‘recurso’ del ‘Español Internacional’, se refiere a ‘archivo’, que es la acepción que aparecerá al insertar una actividad)

Administración del sitio ► Extensiones ► Módulos de actividad ► Recurso [Site administration ► Plugins ► Activity modules ► File]

guia rendimiento 7.jpg


Como recomendación, para mejorar el rendimiento, deben desactivarse todos los filtros que no sean imprescindibles.

Administración del sitio ► Extensiones ► Filtros ► Gestionar filtros [Site administration ► Plugins ► Filters ► Manage filters]

guia rendimiento 8.jpg



Opciones especiales para diseñadores

Cuando se diseña un nuevo tema, se debe probar su efecto en varias partes de la plataforma, hasta tener el aprobado definitivo. Este procedimiento crea muchas duplicidades en los archivos CSS. Para evitar estas duplicidades en los servidores en producción, existe una opción que intenta optimizar esos archivos CSS para que ocupen menos espacio.

La efectividad de esta opción está comprobada: Un tema bien configurado, suele crear archivos CSS de unos 450 Kb de tamaño, al aplicar este optimizador, ese archivo suele rebajarse a 350 o 300 Kb. Cada nuevo alumno, al entrar en la plataforma moodle, solicita la página web de nuestro centro formativo, en esa petición van también los archivos CSS, por lo que esos 100 Kb de ahorro se darán en cada nuevo acceso al servidor.

No debe activarse esta opción, si está activado el ‘modo de diseño de temas’.

Administración del sitio ► Desarrollo ► Experimental ► Experimental [Site administration ► Development ► Experimental ► Experimental

guia rendimiento 9.jpg


Así mismo, cuando se están diseñando nuevos temas o modificando la apariencia de nuestra plataforma, se suelen activar varias opciones para facilitar esa labor. Una de esas opciones, que además suelen causar un deterioro muy grande del rendimiento es el ‘modo diseño’, que debe estar desactivado en servidores en producción.

Administración del sitio ► Apariencia ► Temas ► Ajustes de temas [Site administration ► Appearance ► Themes ► Theme settings]

guia rendimiento 10.jpg


Otra opción importante en esta misma dirección, será no permitir que las categorías tengan su propio tema, pues en servidores con muchas categorías y cambios constantes de temas, puede afectar relativamente al rendimiento.

guia rendimiento 11.jpg


Al crear un nuevo curso se puede también ‘forzar tema’, pero esa opción no deteriora tanto el rendimiento, pues el alumno una vez esta dentro del curso, suele permanecer un cierto tiempo, por lo que el servidor no tiene que estar modificando la apariencia.



Limpieza

Todas las opciones de ‘limpieza’ pueden mejorar el rendimiento, en tanto cuanto realmente borran datos y verifican la integridad de los registros. Antes de nada, hay que tener en cuenta que la limpieza se ejecuta al llegar determinados límites impuestos aquí, por lo que no podemos ajustar que se ejecute esta limpieza en un horario menos congestionado. Si la limpieza se ejecuta en un momento que nuestro servidor está muy ocupado, puede causar una terrible bajada de la velocidad. Debe reducirse los días del registro al mínimo posible, pues de ese modo nunca serán archivos muy grandes. Si queremos mantener datos con mucha antigüedad, podemos realizar copias de seguridad periódicas de estos archivos y guardarlos en otra ubicación, para que sean procesados fuera del sistema de moodle.

Administración del sitio ► Servidor ► Limpieza [Site administration ► Server ► Cleanup]

guia rendimiento 12.jpg



Manejo de la sesión

La información de las sesiones de los usuarios puede almacenarse en ‘base de datos’ o directamente al disco. Pues bien, debe activarse la opción de ‘base de datos’ solamente en casos estrictamente necesarios. Varios administradores han reportado una mejora bastante considerable del rendimiento, cambiando el manejo de la sesión fuera de la base de datos.

Otro parámetro que debe tenerse en cuenta, aunque en menor medida, es el tiempo de inactividad límite. Si bajamos excesivamente este valor, el usuario tendrá que volver a acceder a la plataforma, provocando que el servidor tenga que regenerar una nueva sesión.

Administración del sitio ► Servidor ► Gestión de la sesión [Site administration ► Server ► Session handling]

guia rendimiento 13.jpg



Estadísticas

Es normal, que al activar una herramienta como las ‘estadísticas’ el trabajo del servidor aumente, pues muchas acciones de nuestro alumnado pasarán a ser monitorizadas. Esta opción tiene que ser comprobada, en relación al rendimiento, por los datos que puedan facilitarnos a posteriori esas mismas estadísticas.

guia rendimiento 14.jpg



Copia de seguridad programada (de cursos)

En primer lugar, debe tenerse en cuenta que realizar copias de seguridad es una obligación inexcusable de cualquier servidor en producción. No podemos desactivar directamente esta opción como recomiendan varios autores… Diseñar nuestra estrategia de copias de seguridad debe aclarar la forma, la asiduidad y la responsabilidad de su realización.

Si determinamos realizar las copias de forma manual, puede desactivarse por completo esta opción. Luego debemos ser coherentes y tener planificada el momento y los datos que debemos asegurar.

En caso contrario, no queda otra alternativa que activar la opción de copia programada, por lo que realmente importante pasa a ser el momento en el que se realiza, intentando que sea en horarios no lectivos.

Debemos recordar en este punto, que esta opción no debe ser usada como una política de recuperación de todo el sitio web. La necesidad de tener un protocolo de recuperación de todo el sitio web debe ser diseñada y ejecutada aparte de moodle.

Administración del sitio ► Cursos ► Copias de seguridad ► Copia de seguridad programada [Site administration ► Courses ► Backups ► Automated backup setup]

guia rendimiento 15.jpg



Otras

Diseñar una estrategia para recuperar un sitio web a veces es enfocada solamente desde el punto de vista del desastre. Debemos considerar también un enfoque optimista. Una plataforma moodle instalada desde cero siempre va a ser más rápida que una que lleva varios años en línea. Debemos establecer protocolos que nos permitan instalar cada cierto tiempo una plataforma moodle limpia, pero con nuestras personalizaciones. Esta premisa puede asegurar un buen rendimiento, además de garantizar al máximo una recuperación de datos.

Existen algunos módulos que realmente necesitan de más recursos, como por ejemplo el chat, el fórum, los diferentes tipos de cuestionarios, la propia ejecución del cron, etc. … Por lo tanto, una vez hayamos optimizado el rendimiento general, debemos ajustar la configuración de cada extensión por separado, para comprobar la capacidad y la estabilidad de nuestra plataforma.



A veces, la cuestión más importante a tener en cuenta, no son ninguno de los parámetros que hemos señalado a lo largo de este documento, sino la propia configuración y el contenido de cada uno de nuestros cursos:

1.La estructura del curso puede influir en la percepción que el alumnado tiene al navegar por las distintas actividades.

2.El uso de imágenes optimizadas para la web es algo que todos conocemos, pero muy pocos aplicamos con profesionalidad. De nada nos vale pasar horas ajustando los parámetros de nuestros servidores, si luego, al crear un curso disponemos imágenes con resoluciones de 3.000 x 2.000, sin comprimir o simplemente en formatos que necesitan visores muy concretos.

3.Hoy en día (y en los cursos de idiomas sobre todo), el uso de audio y video se está incrementando notablemente. Pues bien, si con una imagen estática no tenemos el debido cuidado, ¡qué decir de los archivos multimedia!



La optimización de una plataforma es un trabajo minucioso, en el cual debemos poner toda nuestra atención. Aunque muchas veces esas horas de dedicación no tengan una visibilidad instantánea, confíen tranquilamente que el alumnado agradece un sitio web bien configurado.