Controla los picos de uso de CPU de Nextcloud Preview con una cola programada.

Si el uso de la CPU de tu servidor Nextcloud aumenta bruscamente mientras se crean las previsualizaciones, es probable que la carga de trabajo se produzca de forma repentina: los usuarios abren carpetas con muchas imágenes, se está indexando una biblioteca grande o una tarea de previsualización intenta generar archivos de mayor tamaño del necesario. Instala la aplicación Generador de previsualizaciones de Nextcloud, deja que procese los archivos nuevos y modificados según una programación controlada y reduce el tamaño innecesario de las previsualizaciones. Esto libera el trabajo de las sesiones de navegación con mucho tráfico; sin embargo, no elimina la conversión de imágenes ni la carga de trabajo inicial de puesta al día.

Estos pasos se basan en el archivo README del Generador de Vistas Previas y la documentación de Nextcloud 35, revisada el 10 de octubre de 2026. Confirme la compatibilidad de su versión en la tienda de aplicaciones de Nextcloud. El archivo README indica que los archivos cifrados no son compatibles.

¿Por qué la generación de vistas previas aumenta el uso de la CPU?

Nextcloud crea miniaturas a petición del usuario, a menos que ya exista una vista previa. La decodificación, el redimensionamiento y la conversión de imágenes, especialmente para originales grandes o con varias dimensiones de destino, pueden consumir CPU y memoria. Un pico de solicitudes hace que este trabajo sea visible al mismo tiempo que el uso interactivo.

Preview Generator pone en cola los archivos nuevos o modificados para su procesamiento en segundo plano. Las previsualizaciones existentes son más económicas de servir, pero las que faltan siguen utilizando el método bajo demanda de Nextcloud. La aplicación traslada parte del trabajo a los periodos de menor actividad; no puede reducir el procesamiento total ni solucionar otros cuellos de botella, como la conversión de vídeo o el almacenamiento lento.

Configura una cola de vista previa controlada.

1. Compruebe el modo de ejecución en segundo plano y la compatibilidad de la aplicación.

En la configuración de administración, revise las tareas en segundo plano. La tarea integrada de Preview Generator requiere el modo Cron; su archivo README indica que AJAX y Webcron no son compatibles con esta tarea de larga duración. Nextcloud recomienda usar el cron del sistema. Confirme que la página de administración indique que se está usando Cron.

Instale Preview Generator desde la pantalla de Aplicaciones o, si su implementación utiliza OCC y permite la instalación de aplicaciones, ejecute estos comandos desde el directorio de instalación de Nextcloud. En Debian o Ubuntu, la cuenta del servidor web suele ser www-data; utilice el usuario HTTP real y la versión de PHP CLI para su host:

sudo -u www-data php /var/www/nextcloud/occ app:install previewgenerator
sudo -u www-data php /var/www/nextcloud/occ app:enable previewgenerator

Si ya está instalado, omita el primer comando. Compruebe el estado y los comandos disponibles:

sudo -u www-data php /var/www/nextcloud/occ app:list
sudo -u www-data php /var/www/nextcloud/occ list preview

Ejecute OCC como usuario HTTP para que la propiedad de los archivos se mantenga constante. Las rutas y los usuarios varían según la implementación. Consulte la documentación de OCC de Nextcloud .

2. Reduzca las variantes de vista previa antes de iniciar una generación a gran escala.

Preview Generator puede crear miniaturas cuadradas y previsualizaciones con relación de aspecto en tamaños configurados. Su archivo README indica que los tamaños deben ser potencias de cuatro, y un valor vacío omite esa categoría de previsualización. A continuación se muestra un perfil inicial restringido para un servidor con problemas de carga. Conserva mosaicos cuadrados pequeños y dos tamaños de relación de aspecto, omitiendo las variantes separadas de solo ancho y solo alto:

sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="64 256" previewgenerator squareSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="256 1024" previewgenerator fillWidthHeightSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="" previewgenerator widthSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="" previewgenerator heightSizes

Este perfil de carga reducida no es universal: las aplicaciones pueden necesitar vistas previas más grandes u otras formas. Si faltan miniaturas o están borrosas, identifique la vista necesaria y añada solo su tamaño. Las dimensiones mayores aumentan el procesamiento y el uso de la caché. El conjunto mínimo recomendado en el archivo README para Archivos, Fotos y Actividad utiliza un tamaño mayor de 4096 píxeles; evalúe esta compensación en su hardware. Consulte el archivo README oficial del Generador de vistas previas ; este utiliza un tamaño de relación de aspecto mayor de 4096 píxeles, así que evalúe esta compensación en su hardware.

La configuración impone un límite máximo de píxeles. Realice una copia de seguridad del archivo antes de editarlo y asegúrese de que sea compatible con los tamaños de aplicación seleccionados. Deshabilitar las vistas previas elimina las miniaturas en todas las aplicaciones preview_max_x.preview_max_yconfig/config.php

3. Programar el comando de pregeneración de la aplicación sin duplicar su proceso.

Para un servidor pequeño, el gestor de colas integrado puede ser suficiente una vez que el modo Cron esté activado. Su tarea predeterminada está limitada a un máximo de cinco minutos por ejecución, y la aplicación proporciona estadísticas de la cola para su monitorización. Si necesita un período de baja demanda predecible, utilice el comando OCC específico en el cron del sistema. Al usar esta programación personalizada, desactive la tarea de cola predeterminada de la aplicación para que ambos mecanismos no compitan.

sudo -u www-data php /var/www/nextcloud/occ config:app:set --value=true --type=boolean previewgenerator job_disabled

Luego edite el crontab para el usuario del servidor web ( sudo crontab -u www-data -e) y agregue un ejemplo de programación como:

*/10 * * * * php -f /var/www/nextcloud/occ preview:pre-generate

Diez minutos es solo un ejemplo. Elija una frecuencia y un intervalo que se ajusten a su tráfico y capacidad; confirme sus rutas PHP y OCC. No programe el comando en otro lugar. Mantenga la cron.phptarea programada de Nextcloud, que ejecuta otras tareas en segundo plano. Consulte la guía de tareas en segundo plano de Nextcloud para obtener información sobre la configuración del cron del sistema.

4. Evita una carrera de recuperación incontrolada la primera vez

El archivo README sugiere preview:generate-allsobrescribir los archivos existentes después de la instalación. En una biblioteca grande, esta actualización puede provocar un pico importante en el uso de la CPU. Evite usar muchos procesos en un servidor con mucha actividad. Comience con un usuario o ruta durante un período de baja actividad y supervise la CPU, la memoria, el rendimiento del disco y el espacio libre. El comando admite identificadores de usuario, rutas y número de procesos; comience con un solo proceso. Si es necesario, divida el análisis en varias ventanas.

Verificar que la carga se esté volviendo predecible.

Después de ejecutar el comando, compruebe la cola:

sudo -u www-data php /var/www/nextcloud/occ preview:queue-stats

Las estadísticas de la cola incluyen vistas previas obsoletas. Una disminución en la acumulación de tareas y picos de CPU que finalizan con el trabajo programado indican que la cola está progresando. Abra una carpeta representativa para confirmar las miniaturas y luego observe la navegación normal. Compare la CPU con niveles de tráfico similares; no llegará a cero.

Si la cola no se reduce, revise los registros de cron y ejecute el proceso preview:pre-generate -vven una ventana controlada para ver los archivos procesados. Si el uso de la CPU sigue siendo alto después de que se vacíe la cola, investigue otros procesos, tareas o servicios multimedia de PHP. Si las vistas previas utilizan demasiado espacio en disco, elimine los tamaños no utilizados o reduzca las dimensiones. Verifique que las vistas previas restantes admitan las vistas que necesitan los usuarios.

Referencias oficiales

Dejar un comentario

Solucionar problemas de instalación de la aplicación Nextcloud que reportan falta de conexión a Internet

Solucionar problemas de instalación de la aplicación Nextcloud que reportan falta de conexión a Internet

Identificar los fallos de instalación de la App Store y determinar si se deben a problemas de DNS, HTTPS, proxy, TLS o configuración del propio servidor Nextcloud.

Controla los picos de uso de CPU de Nextcloud Preview con una cola programada.

Traslada el trabajo de creación de miniaturas a una programación controlada en segundo plano, recorta los tamaños de vista previa no utilizados y verifica la cola sin sobrecargar tu servidor Nextcloud.

Obtén Nextcloud Desktop Sync: Más allá del procesamiento de archivos.

Localiza el archivo, la regla de exclusión, el problema de conexión o el estado de la base de datos del cliente que está impidiendo la sincronización de Nextcloud y, a continuación, verifica que las cargas y descargas se realicen de forma segura.

Elimine la advertencia de Nextcloud OPcache ajustando el límite correcto.

Encuentre el límite de PHP OPcache que activa la advertencia de Nextcloud, actualice la configuración web PHP correcta, reinicie de forma segura y verifique el resultado.

Conectar Nextcloud con CODE Docker: Configuración y ventajas e inconvenientes

Conectar Nextcloud con CODE Docker: Configuración y ventajas e inconvenientes

Compara el código integrado con el basado en Docker y, a continuación, conecta Collabora Online a Nextcloud mediante un proxy inverso HTTPS seguro.

Cree un clúster Nextcloud resiliente con Galera

Planifique una implementación confiable de Nextcloud HA con almacenamiento compartido, bloqueo de Redis, enrutamiento MariaDB con reconocimiento de quórum y comprobaciones prácticas de conmutación por error.

Consigue que las llamadas de Nextcloud Talk se realicen cuando falle Direct Media.

Consigue que las llamadas de Nextcloud Talk se realicen cuando falle Direct Media.

Configure y verifique un relé TURN accesible para Nextcloud Talk cuando los firewalls o la NAT restrictiva bloqueen los medios de llamada directa.

Elimine las advertencias de integridad de Nextcloud restaurando los archivos correctos.

Utilice el informe de archivos no válidos para identificar código de Nextcloud modificado, faltante o adicional, restaurar archivos de confianza de forma segura y verificar el resultado.

Conecta Gmail o Microsoft 365 a Nextcloud Mail mediante OAuth2.

Configura OAuth2 para Nextcloud Mail con Gmail o Microsoft 365, verifica la recepción y el envío, y resuelve los fallos comunes de consentimiento y SMTP.

Elimine de forma segura el modo de mantenimiento de Nextcloud atascado con OCC.

Elimine de forma segura el modo de mantenimiento de Nextcloud atascado con OCC.

Utilice OCC para restaurar el acceso a Nextcloud, verificar el estado de la migración de la base de datos y elegir el comando adecuado para las instalaciones de archivos, Docker o Snap.