Início
» ESCRITÓRIO MS
»
Corrigir problema de falta de memória no servidor de documentos ONLYOFFICE em um VPS
Corrigir problema de falta de memória no servidor de documentos ONLYOFFICE em um VPS
Comece verificando se o host Linux ou o contêiner do ONLYOFFICE está atingindo o limite de memória. As diretrizes atuais da ONLYOFFICE Docs Community Edition listam 4 GB de RAM e pelo menos 4 GB de swap como requisitos básicos. A página de solução de problemas do Docker afirma que o uso de 2 a 4 GB de RAM pode ser normal para algumas dezenas de usuários ativos, pois o uso de memória aumenta com documentos abertos e usuários simultâneos. A tabela de hardware recomenda o Kubernetes para implantações com mais de 400 usuários ativos simultâneos. Esses são valores de referência, não uma garantia de que todos os VPS suportarão a mesma carga: o sistema operacional do host, outros contêineres, o tamanho dos documentos e os limites do provedor de VPS também são importantes.
Este guia se concentra na instalação comum do Docker em um VPS Linux. Siga os quatro passos na ordem: meça a carga do host e dos contêineres, verifique os logs e o cache de arquivos esquecidos, reduza a carga desnecessária ou corrija um limite de contêineres muito baixo e, em seguida, reinicie somente se necessário e verifique em condições normais de uso. Os exemplos de comando usam ` <CONTAINER_ID><nome_do_arquivo>` como um marcador; substitua-o pelo ID ou nome do arquivo docker ps. Faça um backup e agende uma manutenção antes de interromper um editor com usuários ativos.
1. Confirme onde está ocorrendo a pressão na memória.
Execute os primeiros comandos no host VPS, não dentro do contêiner ONLYOFFICE:
free -h
swapon --show
docker stats --no-stream
free -hMostra a memória disponível do host e o espaço de swap. swapon --showConfirma se o swap está ativo. Em docker stats, compare o uso de memória do ONLYOFFICE com o limite exibido. Se o host tiver quase nenhuma memória disponível e vários serviços estiverem usando RAM, o VPS pode estar subdimensionado. Se o host ainda tiver espaço livre, mas o contêiner do ONLYOFFICE estiver próximo de um limite muito menor, o limite do contêiner pode ser a causa imediata. Swap quase cheio, trocas de memória constantes ou alta atividade de disco podem tornar a edição lenta mesmo antes que o host encerre um processo.
Passo 1: execute os comandos `free -h` e `swapon --show` no host VPS para verificar a RAM disponível e se o swap está ativo.Passo 1: o comando `docker stats --no-stream` compara o uso atual de memória do contêiner ONLYOFFICE com seu limite.
Verifique também os limites do Docker configurados:
O primeiro comando imprime as configurações de memória e memória mais swap em bytes. Um limite de memória zero geralmente significa que nenhum limite de memória explícito para o contêiner está configurado; isso não significa que o VPS tenha RAM ilimitada. A configuração de memória e swap do Docker é um limite combinado de memória e swap, portanto, não a interprete como swap apenas. O segundo comando informa se o Docker registrou um encerramento por falta de memória (OOM kill) para o contêiner e seu último código de saída. O Docker documenta esses limites como controles impostos pelo host Linux, e a pressão de OOM em todo o host pode afetar mais de um contêiner.
2. Verifique os logs do contêiner e os casos de uso intenso conhecidos do ONLYOFFICE.
Leia os registros recentes antes de alterar configurações ou excluir arquivos:
docker logs --since 1h <CONTAINER_ID>
Procure por reinicializações repetidas, erros de inicialização do banco de dados e mensagens próximas ao momento em que um editor ficou indisponível. Verifique também o log do kernel do host em busca de eventos de falta de memória, caso tenha permissão.
A página de solução de problemas do Docker da ONLYOFFICE sugere especificamente verificar se há documentos presos ou esquecidos /var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten/quando o uso de memória parecer inesperadamente alto. Primeiro, inspecione o tamanho e o conteúdo do diretório; não remova arquivos indiscriminadamente. Eles podem ser relevantes para a recuperação ou solução de problemas. Se o diretório for grande ou continuar crescendo, preserve os arquivos e os registros e, em seguida, siga as orientações oficiais de solução de problemas ou pergunte ao suporte da ONLYOFFICE o que é seguro limpar para a sua versão.
Passo 2: inspecione os registros recentes do contêiner antes de alterar o VPS ou excluir arquivos em cache.
3. Reduzir a demanda desnecessária e corrigir um limite de recursos do Docker muito baixo.
De acordo com as diretrizes de dimensionamento do ONLYOFFICE, um "usuário ativo" é aquele que tem um documento aberto no editor, incluindo quem está apenas visualizando. Usuários que simplesmente fizeram login em uma plataforma integrada, sem nenhum documento aberto, não são contabilizados da mesma forma. Peça aos usuários que fechem as abas de documentos não utilizadas e evite agendar uma grande quantidade de edições em um VPS pequeno. Se a carga for resultado da abertura simultânea de várias planilhas grandes ou arquivos complexos, compare o uso de memória em períodos de baixa atividade com o pico real, em vez de estimar apenas com base no número de contas.
Se o VPS tiver a área de swap desativada, adicionar swap pode fornecer uma proteção temporária contra picos repentinos de uso. O guia de instalação do Docker da ONLYOFFICE recomenda pelo menos 4 GB de swap e observa que essa quantidade depende do sistema operacional do host. O swap é armazenado em disco e é muito mais lento que a RAM, portanto, não substitui a memória física adequada. Antes de criar um arquivo de swap, verifique se ele já existe, verifique o espaço livre em disco e confirme se o seu sistema de arquivos e provedor de VPS suportam esse método. Em um sistema de arquivos Linux típico que suporta arquivo de swap, um exemplo seria:
Não execute esses comandos sobre um arquivo de swap existente /swapfile. Para manter um arquivo de swap recém-criado após a reinicialização, adicione /etc/fstabapenas uma entrada correspondente após verificar se já existe uma entrada correspondente:
/swapfile none swap sw 0 0
Se o Docker mostrar um limite de memória baixo para o contêiner, inspecione o arquivo Compose ou o painel de implantação que criou o contêiner. Aumente ou remova o limite somente após verificar a RAM total do VPS e a memória usada pelo sistema operacional, banco de dados, plataforma de integração e outros serviços. Não aloque toda a RAM do host para o ONLYOFFICE. Se o próprio host estiver com a memória esgotada, alterar um limite do Docker não criará mais memória física; redimensione o VPS ou mova outros serviços para outro host. O Compose suporta limites de memória, mas o limite configurado deve corresponder ao modo de implantação real e à memória disponível do host.
Um VPS de 2 GB executando o ONLYOFFICE juntamente com o Nextcloud ou outros serviços fica abaixo da configuração mínima de 4 GB de RAM recomendada pelo fornecedor. Um VPS de 4 GB também pode apresentar falta de memória quando o sistema operacional host e a pilha de integração a compartilham. Nesses casos, um VPS maior ou um servidor de documentos dedicado é mais confiável do que reiniciar o contêiner repetidamente. Para mais de 400 usuários ativos simultâneos, a tabela atual do ONLYOFFICE recomenda uma implantação do Kubernetes e entrar em contato com o ONLYOFFICE para obter orientações sobre dimensionamento; essa não é uma carga de trabalho que pode ser resolvida adicionando um pequeno arquivo de swap a um VPS.
Passo 4: antes de reiniciar o contêiner, execute o script de preparação documentado do ONLYOFFICE para que as sessões de edição ativas possam ser desconectadas corretamente.
4. Reinicie com segurança e verifique o resultado.
Não reinicie o Servidor de Documentos enquanto houver usuários editando, a menos que a interrupção seja inevitável. A ONLYOFFICE explica que um documento é salvo somente após todos os usuários que o estão editando o fecharem. Antes de uma parada programada do contêiner, o guia de solução de problemas recomenda o script de preparação mostrado abaixo; ele pode levar até cinco minutos enquanto os usuários se desconectam. Avise os usuários primeiro, preserve os backups e siga seu procedimento normal de manutenção.
Se você usa o Docker Compose, faça a alteração permanente na configuração do Compose ou no painel de controle e use o fluxo de trabalho normal de reinicialização do projeto. Uma alteração pontual em um contêiner em execução pode desaparecer quando ele for recriado. Não use --oom-kill-disableuma prioridade OOM extrema para manter o ONLYOFFICE ativo; o Docker alerta que o esgotamento da memória do host pode colocar o VPS e outros serviços em risco.
Após o VPS ou contêiner retornar, confirme se o contêiner permanece íntegro, se o editor abre e salva um documento de teste, se a memória do host permanece disponível e se o contêiner não está reiniciando repetidamente. Observe o consumo de memória do host e do contêiner durante um período de uso intenso. Se o consumo de memória aumentar continuamente após o fechamento de documentos, se o diretório de arquivos esquecidos crescer ou se eventos de falta de memória (OOM) retornarem, colete a saída de free -h`ls -l`, `ls -l` swapon --show, docker stats`ls docker inspect-l` e os logs recentes para suporte. Não considere uma reinicialização bem-sucedida como prova de que a capacidade foi corrigida.
Guia rápido de decisão
O que você observa
Próximo passo mais útil
A memória RAM do host está esgotada e outros serviços também estão sendo afetados.
Atualize o VPS ou migre os serviços que não são de edição. Uma configuração de contêiner não pode adicionar RAM ao host.
O host tem espaço disponível, mas o ONLYOFFICE atingiu um limite baixo de Docker.
Analise o limite do Compose ou do provedor e aumente-o apenas dentro de uma margem de segurança do host.
O uso aumenta com documentos abertos e diminui quando eles são fechados.
Compare com a simultaneidade esperada e os tipos de documentos; considere adicionar mais RAM se os picos normais causarem falta de memória (OOM).
O uso permanece excepcionalmente alto mesmo após a queda na atividade.
Inspecione os registros recentes e o cache de arquivos esquecidos documentado; preserve os dados e investigue antes da limpeza.
Mais de 400 usuários têm documentos abertos simultaneamente.
Utilize o método de dimensionamento de cluster/Kubernetes do fornecedor em vez de um único VPS pequeno.