Inicio
» MS OFFICE
»
Solucionar el problema de falta de memoria en el servidor de documentos ONLYOFFICE en un VPS
Solucionar el problema de falta de memoria en el servidor de documentos ONLYOFFICE en un VPS
Para empezar, compruebe si el host Linux o el contenedor de ONLYOFFICE están alcanzando su límite de memoria. La guía actual de ONLYOFFICE Docs Community Edition indica que se requieren 4 GB de RAM y al menos 4 GB de espacio de intercambio como requisitos básicos. Su página de solución de problemas de Docker señala que un uso de 2 a 4 GB de RAM puede ser normal para unas pocas docenas de usuarios activos, ya que el uso de memoria aumenta con los documentos abiertos y los usuarios concurrentes. La tabla de hardware recomienda Kubernetes para implementaciones con más de 400 usuarios activos concurrentes. Estas cifras son de referencia y no garantizan que todos los VPS gestionen la misma carga: el sistema operativo del host, otros contenedores, el tamaño de los documentos y los límites del proveedor del VPS también influyen.
Esta guía se centra en la instalación común de Docker en un VPS Linux. Siga los cuatro pasos en orden: mida la presión del host y del contenedor, revise los registros y la caché de archivos olvidados, reduzca la carga evitable o corrija un límite de contenedor demasiado bajo, luego reinicie solo si es necesario y verifique bajo uso normal. Los ejemplos de comandos usan <CONTAINER_ID>como marcador de posición; reemplácelo con el ID o nombre de docker ps. Realice una copia de seguridad y programe el mantenimiento antes de detener un editor que tenga usuarios activos.
1. Confirme dónde se está produciendo la presión sobre la memoria.
Ejecute los primeros comandos en el host VPS, no dentro del contenedor ONLYOFFICE:
free -h
swapon --show
docker stats --no-stream
free -hMuestra la memoria disponible del host y el intercambio. swapon --showConfirma si el intercambio está activo. En docker stats, compara el uso de memoria de ONLYOFFICE con su límite mostrado. Si el host casi no tiene memoria disponible y varios servicios están usando RAM, es posible que el VPS sea insuficiente. Si el host aún tiene margen, pero el contenedor de ONLYOFFICE está cerca de un límite mucho menor, el límite del contenedor puede ser la causa inmediata. El intercambio casi lleno, el intercambio sostenido o la actividad intensa del disco pueden ralentizar la edición incluso antes de que el host termine un proceso.
Paso 1: ejecute free -h y swapon --show en el host VPS para ver la RAM disponible y si el intercambio está activo.Paso 1: docker stats --no-stream compara el uso de memoria actual del contenedor ONLYOFFICE con su límite.
Compruebe también los límites de Docker configurados:
El primer comando imprime la configuración de memoria y memoria más intercambio en bytes. Un límite de memoria cero generalmente significa que no se ha configurado un límite de memoria explícito para el contenedor; no significa que el VPS tenga RAM ilimitada. La configuración de intercambio de memoria de Docker es un límite combinado de memoria y espacio de intercambio, por lo que no debe interpretarse como solo espacio de intercambio. El segundo comando informa si Docker registró una finalización por falta de memoria (OOM kill) para el contenedor y su último código de salida. Docker documenta estos límites como controles impuestos por el host Linux, y la presión de OOM en todo el host puede afectar a más de un contenedor.
2. Compruebe los registros del contenedor y el caso de uso elevado conocido de ONLYOFFICE.
Lea los registros recientes antes de cambiar la configuración o eliminar archivos:
docker logs --since 1h <CONTAINER_ID>
Busque reinicios repetidos, errores de inicio de la base de datos y mensajes cercanos al momento en que un editor dejó de estar disponible. Si tiene permiso, revise también el registro del kernel del host en busca de eventos de falta de memoria.
La página de solución de problemas de Docker de ONLYOFFICE sugiere específicamente verificar si hay documentos bloqueados u olvidados /var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten/cuando el uso de memoria parece inesperadamente alto. Primero, inspeccione el tamaño y el contenido del directorio; no elimine los archivos sin más. Podrían ser relevantes para la recuperación o la solución de problemas. Si el directorio es grande o sigue creciendo, conserve los archivos y los registros, y luego siga las instrucciones oficiales de solución de problemas o consulte con el soporte técnico de ONLYOFFICE qué archivos puede limpiar de forma segura para su versión.
Paso 2: inspeccione los registros recientes del contenedor antes de cambiar el VPS o eliminar los archivos en caché.
3. Reducir la demanda evitable y corregir un límite de Docker demasiado pequeño.
En las directrices de dimensionamiento de ONLYOFFICE, un «usuario activo» es aquel que tiene un documento abierto en el editor, incluso si solo lo está visualizando. Los usuarios que simplemente han iniciado sesión en una plataforma integrada sin tener un documento abierto no se contabilizan de la misma manera. Pida a los usuarios que cierren las pestañas de documentos que no utilicen y evite programar sesiones de edición intensas en un VPS pequeño. Si la carga se produce al abrir varias hojas de cálculo grandes o archivos complejos simultáneamente, compare la memoria con baja actividad y en el pico máximo real, en lugar de estimarla únicamente a partir del número de cuentas.
Si el VPS tiene la memoria de intercambio deshabilitada, agregarla puede proporcionar un búfer temporal contra picos repentinos. La guía de instalación de Docker actual de ONLYOFFICE indica que se necesitan al menos 4 GB de memoria de intercambio y señala que la cantidad depende del sistema operativo del host. La memoria de intercambio se basa en el disco y es mucho más lenta que la RAM, por lo que no sustituye a una memoria física adecuada. Antes de crear un archivo de intercambio, compruebe que no exista ya uno, verifique el espacio libre en disco y confirme que su sistema de archivos y proveedor de VPS admiten este método. En un sistema de archivos Linux típico que admita un archivo de intercambio, un ejemplo es:
No ejecute estos comandos sobre un archivo existente /swapfile. Para conservar un archivo de intercambio recién creado después de reiniciar, agregue una entrada coincidente /etc/fstabsolo después de verificar si existe una entrada:
/swapfile none swap sw 0 0
Si Docker muestra un límite de memoria bajo para el contenedor, revise el archivo Compose o el panel de despliegue que lo creó. Aumente o elimine el límite solo después de verificar la RAM total del VPS y la memoria utilizada por el sistema operativo, la base de datos, la plataforma de integración y otros servicios. No asigne toda la RAM del host a ONLYOFFICE. Si el host está saturado, cambiar un límite de Docker no creará más memoria física; redimensione el VPS o mueva otros servicios a otro host. Compose admite límites de memoria, pero el límite configurado debe coincidir con el modo de despliegue real y la memoria disponible del host.
Un VPS de 2 GB que ejecuta ONLYOFFICE junto con Nextcloud u otros servicios está por debajo del requisito mínimo de 4 GB de RAM especificado por el proveedor. Un VPS de 4 GB también puede quedarse sin memoria cuando el sistema operativo anfitrión y la pila de integración la comparten. En esos casos, un VPS más grande o un servidor de documentos dedicado es más fiable que reiniciar el contenedor repetidamente. Para más de 400 usuarios activos concurrentes, la tabla actual de ONLYOFFICE recomienda una implementación en Kubernetes y contactar con ONLYOFFICE para obtener asesoramiento sobre el dimensionamiento; esta carga de trabajo no se resuelve añadiendo un pequeño archivo de intercambio a un VPS.
Paso 4: antes de reiniciar un contenedor según lo previsto, ejecute el script de preparación documentado de ONLYOFFICE para que las sesiones de edición activas se desconecten correctamente.
4. Reinicie de forma segura y luego verifique el resultado.
No reinicie el servidor de documentos mientras haya usuarios editando, a menos que la interrupción sea inevitable. ONLYOFFICE explica que un documento se guarda después de que todos los usuarios que lo editan lo hayan cerrado. Antes de una detención programada del contenedor, su guía de solución de problemas recomienda el script de preparación que se muestra a continuación; este puede tardar hasta cinco minutos mientras los usuarios se desconectan. Avise a los usuarios con antelación, conserve las copias de seguridad y siga su procedimiento de mantenimiento habitual.
Si utiliza Docker Compose, realice el cambio permanente en la configuración o el panel de control de Compose y utilice el flujo de trabajo de reinicio habitual del proyecto. Un cambio puntual en un contenedor en ejecución puede desaparecer al recrearlo. No utilice --oom-kill-disableuna prioridad de OOM extrema para mantener ONLYOFFICE activo; Docker advierte que el agotamiento de la memoria del host puede poner en riesgo el VPS y otros servicios.
Después de que el VPS o contenedor se reinicie, confirme que el contenedor se mantiene saludable, el editor abre y guarda un documento de prueba, la memoria del host permanece disponible y el contenedor no se reinicia repetidamente. Observe la memoria del host y del contenedor durante un período de actividad representativo. Si la memoria aumenta continuamente después de que se cierran los documentos, el directorio forgotten-files crece o se producen eventos OOM, recopile la salida de free -h, swapon --show, docker stats, docker inspect, y los registros recientes para obtener asistencia. No considere un reinicio exitoso como prueba de que la capacidad es fija.
Guía de decisión rápida
Lo que observas
El siguiente paso más útil
La memoria RAM del host está agotada y otros servicios también se ven afectados.
Actualiza el VPS o mueve los servicios que no sean de edición. Una configuración de contenedor no puede añadir RAM al host.
El host tiene espacio, pero ONLYOFFICE alcanza un límite bajo de Docker.
Revise el límite de Compose o del proveedor y auméntelo solo dentro del margen de seguridad del host.
El uso aumenta con los documentos abiertos y luego disminuye cuando se cierran.
Compare con la concurrencia esperada y los tipos de documentos; considere aumentar la RAM si los picos normales provocan errores de memoria insuficiente (OOM).
El uso se mantiene inusualmente alto después de que disminuye la actividad.
Inspeccione los registros recientes y la caché documentada de archivos olvidados; conserve los datos e investigue antes de realizar la limpieza.
Más de 400 usuarios tienen documentos abiertos simultáneamente.
Utilice la configuración de tamaño de clúster/Kubernetes del proveedor en lugar de un único VPS pequeño.