Naprawa serwera dokumentów ONLYOFFICE z powodu braku pamięci na serwerze VPS

Zacznij od sprawdzenia, czy host Linux lub kontener ONLYOFFICE nie osiąga limitu pamięci. Aktualne wytyczne ONLYOFFICE Docs Community Edition wymieniają 4 GB pamięci RAM i co najmniej 4 GB pamięci wymiany jako wymagania bazowe. Strona rozwiązywania problemów z Dockerem podaje, że użycie 2–4 GB pamięci RAM może być normalne dla kilkudziesięciu aktywnych użytkowników, ponieważ zużycie pamięci rośnie wraz z otwartymi dokumentami i liczbą jednoczesnych użytkowników. Tabela sprzętu zaleca Kubernetesa dla wdrożeń powyżej 400 jednoczesnych aktywnych użytkowników. Są to wartości referencyjne, a nie obietnica, że ​​każdy VPS obsłuży to samo obciążenie: system operacyjny hosta, inne kontenery, rozmiar dokumentu i limity dostawcy VPS również mają znaczenie.

Ten przewodnik koncentruje się na typowej instalacji Dockera na serwerze VPS z systemem Linux. Wykonaj cztery kroki w podanej kolejności: zmierz obciążenie hosta i kontenera, sprawdź logi i pamięć podręczną zapomnianych plików, zmniejsz niepotrzebne obciążenie lub popraw zbyt niski limit kontenera, a następnie uruchom ponownie tylko w razie potrzeby i zweryfikuj działanie podczas normalnego użytkowania. Przykładowe polecenia służą <CONTAINER_ID>jako symbol zastępczy; zastąp je identyfikatorem lub nazwą z pliku docker ps. Wykonaj kopię zapasową i zaplanuj konserwację przed zatrzymaniem edytora, który ma aktywnych użytkowników.

1. Sprawdź, gdzie występuje obciążenie pamięci

Uruchom pierwsze polecenia na hoście VPS, a nie w kontenerze ONLYOFFICE:

free -h
swapon --show
docker stats --no-stream

free -hPokazuje dostępną pamięć hosta i pamięć wymiany. swapon --showPotwierdza, czy pamięć wymiany jest aktywna. W docker stats[brakuje informacji o użyciu pamięci przez ONLYOFFICE] porównaj zużycie pamięci przez ONLYOFFICE z wyświetlanym limitem. Jeśli host ma prawie zerową ilość dostępnej pamięci, a kilka usług korzysta z pamięci RAM, serwer VPS może być zbyt mały. Jeśli host nadal ma zapas przestrzeni, ale kontener ONLYOFFICE zbliża się do znacznie niższego limitu, bezpośrednią przyczyną może być limit kontenera. Prawie pełna pamięć wymiany, ciągłe używanie pamięci wymiany lub duża aktywność dysku mogą spowolnić edycję, nawet zanim host zakończy proces.

Okno terminala Linux pokazujące polecenia free -h i swapon --show
Krok 1: uruchom free -h i swapon --show na hoście VPS, aby sprawdzić dostępną pamięć RAM i sprawdzić, czy pamięć wymiany jest aktywna.
Okno terminala Linux pokazujące statystyki Dockera --no-stream
Krok 1: docker stats --no-stream porównuje bieżące wykorzystanie pamięci przez kontener ONLYOFFICE z jego limitem.

Sprawdź również skonfigurowane limity Dockera:

docker inspect --format '{{.HostConfig.Memory}} {{.HostConfig.MemorySwap}}' <CONTAINER_ID>
docker inspect --format '{{.State.OOMKilled}} {{.State.ExitCode}}' <CONTAINER_ID>

Pierwsze polecenie wyświetla ustawienia pamięci i pamięci z wymianą (memory-plus-swap) w bajtach. Zerowy limit pamięci zazwyczaj oznacza brak jawnego limitu pamięci kontenera; nie oznacza to jednak, że VPS ma nieograniczoną pamięć RAM. Ustawienie pamięci z wymianą (memory-swap) w Dockerze to łączny limit pamięci i wymiany (memory-swap), więc nie należy go interpretować jako samego swapu. Drugie polecenie raportuje, czy Docker zarejestrował usunięcie braku pamięci (OOM) dla kontenera i jego ostatni kod wyjścia. Docker dokumentuje te limity jako mechanizmy kontroli egzekwowane przez hosta Linux, a obciążenie związane z brakiem pamięci (OOM) na poziomie całego hosta może wpływać na więcej niż jeden kontener.

2. Sprawdź logi kontenerów i znany przypadek częstego użycia ONLYOFFICE

Przed zmianą ustawień lub usunięciem plików zapoznaj się z najnowszymi dziennikami:

docker logs --since 1h <CONTAINER_ID>

Sprawdź, czy nie występują powtarzające się restarty, błędy uruchamiania bazy danych i komunikaty pojawiające się w momencie, gdy edytor stał się niedostępny. Sprawdź również dziennik jądra hosta pod kątem zdarzeń związanych z brakiem pamięci, jeśli masz uprawnienia:

sudo dmesg -T | grep -Ei 'out of memory|killed process|oom' | tail -n 30

Strona rozwiązywania problemów z Dockerem ONLYOFFICE zaleca sprawdzenie, czy w /var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten/przypadku nieoczekiwanie wysokiego wykorzystania pamięci nie ma zablokowanych lub zapomnianych dokumentów. Najpierw sprawdź rozmiar i zawartość katalogu; nie usuwaj bezmyślnie jego plików. Mogą one być istotne dla odzyskiwania lub rozwiązywania problemów. Jeśli katalog jest duży lub nadal się rozrasta, zachowaj pliki i logi, a następnie postępuj zgodnie z oficjalnymi wskazówkami dotyczącymi rozwiązywania problemów lub zapytaj dział wsparcia ONLYOFFICE, co można bezpiecznie wyczyścić w Twojej wersji.

Okno terminala Linux pokazujące polecenie docker logs z symbolem zastępczym identyfikatora kontenera
Krok 2: przed zmianą serwera VPS lub usunięciem plików z pamięci podręcznej sprawdź najnowsze logi kontenera.

3. Zmniejsz niepotrzebne zapotrzebowanie i skoryguj zbyt mały limit Dockera

„Aktywny użytkownik” w wytycznych ONLYOFFICE dotyczących rozmiarów to osoba z dokumentem otwartym w edytorze, w tym osoba, która go tylko przegląda. Użytkownicy zalogowani jedynie na zintegrowanej platformie bez otwartego dokumentu nie są liczeni w ten sam sposób. Poproś użytkowników o zamykanie nieużywanych kart dokumentów i unikaj planowania dużej liczby edycji na małym serwerze VPS. Jeśli obciążenie wynika z jednoczesnego otwierania kilku dużych arkuszy kalkulacyjnych lub złożonych plików, porównaj pamięć przy niskiej aktywności z rzeczywistym zużyciem w szczycie, zamiast szacować je wyłącznie na podstawie liczby kont.

Jeśli serwer VPS ma wyłączoną pamięć wymiany, dodanie jej może zapewnić krótkotrwały bufor chroniący przed nagłym wzrostem obciążenia. Aktualny podręcznik instalacji Dockera firmy ONLYOFFICE wymienia co najmniej 4 GB pamięci wymiany i zaznacza, że ​​jej ilość zależy od systemu operacyjnego hosta. Pamięć wymiany jest przechowywana na dysku i jest znacznie wolniejsza niż pamięć RAM, dlatego nie zastępuje odpowiedniej ilości pamięci fizycznej. Przed utworzeniem pliku wymiany sprawdź, czy plik już nie istnieje, sprawdź ilość wolnego miejsca na dysku i upewnij się, że system plików i dostawca serwera VPS obsługują tę metodę. W typowym systemie plików Linux obsługującym plik wymiany, przykład wygląda następująco:

sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
swapon --show

Nie uruchamiaj tych poleceń na istniejącym pliku /swapfilewymiany. Aby zachować nowo utworzony plik wymiany po ponownym uruchomieniu, dodaj jeden pasujący wpis do pliku wymiany /etc/fstabpo sprawdzeniu, czy istnieje już wpis:

/swapfile none swap sw 0 0

Jeśli Docker wyświetla niski limit pamięci kontenera, sprawdź plik Compose lub panel wdrożenia, który utworzył kontener. Zwiększ lub usuń limit dopiero po sprawdzeniu całkowitej pamięci RAM serwera VPS oraz pamięci używanej przez system operacyjny, bazę danych, platformę integracyjną i inne usługi. Nie przydzielaj całej pamięci RAM hosta do ONLYOFFICE. Jeśli sam host jest wyczerpany, zmiana limitu Dockera nie spowoduje zwiększenia ilości pamięci fizycznej; zmień rozmiar serwera VPS lub przenieś inne usługi na innego hosta. Compose obsługuje limity pamięci, ale skonfigurowany limit musi być zgodny z rzeczywistym trybem wdrożenia i dostępną pamięcią hosta.

Serwer VPS z 2 GB pamięci RAM, na którym działa ONLYOFFICE wraz z NextCloud lub innymi usługami, ma mniej niż deklarowana przez dostawcę wartość bazowa 4 GB pamięci RAM. Serwer VPS z 4 GB pamięci RAM może również nie mieć wystarczającej ilości pamięci, gdy system operacyjny hosta i stos integracyjny współdzielą go. W takich przypadkach większy serwer VPS lub dedykowany serwer dokumentów jest bardziej niezawodny niż wielokrotne restartowanie kontenera. W przypadku ponad 400 jednoczesnych aktywnych użytkowników, aktualna tabela ONLYOFFICE zaleca wdrożenie Kubernetes i kontakt z ONLYOFFICE w celu uzyskania porady dotyczącej rozmiaru; nie jest to obciążenie, które można rozwiązać, dodając mały plik wymiany do jednego serwera VPS.

Okno terminala Linux pokazujące udokumentowane polecenie ONLYOFFICE przygotowujące do zamknięcia
Krok 4: przed planowanym ponownym uruchomieniem kontenera uruchom udokumentowany skrypt przygotowawczy ONLYOFFICE, aby aktywne sesje edycji mogły się bezproblemowo rozłączyć.

4. Uruchom ponownie bezpiecznie, a następnie sprawdź wynik

Nie restartuj Serwera Dokumentów, gdy użytkownicy edytują, chyba że przerwa jest nieunikniona. ONLYOFFICE wyjaśnia, że ​​dokument jest zapisywany po zamknięciu go przez wszystkich użytkowników, którzy go edytują. Przed planowanym zatrzymaniem kontenera, przewodnik rozwiązywania problemów zaleca wykonanie poniższego skryptu przygotowawczego; rozłączenie użytkowników może potrwać do pięciu minut. Najpierw ostrzeż użytkowników, zachowaj kopie zapasowe i postępuj zgodnie ze standardową procedurą konserwacji.

sudo docker exec <CONTAINER_ID> documentserver-prepare4shutdown.sh
sudo docker restart <CONTAINER_ID>

Jeśli korzystasz z Docker Compose, wprowadź trwałą zmianę w konfiguracji Compose lub panelu sterowania i skorzystaj ze standardowego procesu ponownego uruchamiania projektu. Jednorazowa zmiana w działającym kontenerze może zniknąć po jego ponownym utworzeniu. Nie używaj --oom-kill-disableani skrajnego priorytetu OOM, aby utrzymać ONLYOFFICE przy życiu; Docker ostrzega, że ​​wyczerpanie pamięci hosta może narazić VPS i inne usługi na ryzyko.

Po przywróceniu działania serwera VPS lub kontenera należy sprawdzić, czy kontener jest sprawny, edytor otwiera i zapisuje dokument testowy, pamięć hosta jest dostępna i kontener nie uruchamia się ponownie. Należy obserwować pamięć hosta i kontenera w reprezentatywnym okresie wzmożonego ruchu. Jeśli po zamknięciu dokumentów ilość pamięci stale rośnie, katalog „zapomnianych plików” rośnie lub występują zdarzenia „obecności pamięci” (OOM), należy zebrać dane wyjściowe z dzienników free -h, swapon --show, docker stats, docker inspecti , aby uzyskać pomoc techniczną. Nie należy traktować jednego udanego restartu jako dowodu na to, że pojemność jest stała.

Szybki przewodnik decyzyjny

Co obserwujeszNajbardziej przydatny następny ruch
Pamięć RAM hosta jest wyczerpana, a inne usługi również są zagrożoneZaktualizuj VPS lub przenieś usługi nieedytujące. Ustawienie kontenera nie może dodać pamięci RAM hosta.
Host ma miejsce, ale ONLYOFFICE osiąga niski limit DockeraSprawdź limit kompozycji lub limit dostawcy i podnieś go tylko w ramach bezpiecznego marginesu bezpieczeństwa hosta.
Użycie wzrasta po otwarciu dokumentów, a następnie spada po ich zamknięciuPorównaj z oczekiwaną współbieżnością i typami dokumentów; rozważ dodanie większej ilości pamięci RAM, jeśli normalne szczyty powodują OOM.
Użycie pozostaje niezwykle wysokie pomimo spadku aktywnościPrzejrzyj ostatnie logi i udokumentowaną pamięć podręczną zapomnianych plików; zachowaj dane i zbadaj je przed czyszczeniem.
Ponad 400 użytkowników ma jednocześnie otwarte dokumentyZamiast pojedynczego małego serwera VPS należy korzystać ze ścieżki określania rozmiaru klastra/Kubernetes oferowanej przez dostawcę.

Oficjalne referencje

Zostaw komentarz

Jak przenieść obraz w programie Microsoft Word

Jak przenieść obraz w programie Microsoft Word

Dowiedz się, jak przeciągać obraz w programie Word, wybierać opcje zawijania tekstu, zachowywać go w akapicie lub mocować na stronie oraz rozwiązywać problemy z obrazami, których nie można przenieść.

Jak wstawić pole wyboru w programie Excel: dwie proste metody

Jak wstawić pole wyboru w programie Excel: dwie proste metody

Dowiedz się, jak wstawić pole wyboru w programie Excel za pomocą narzędzia w komórce, zliczyć zaznaczone elementy za pomocą formuł lub dodać powiązany formant formularza w starszych wersjach programu na komputery stacjonarne.

Jak automatycznie wypełniać litery w programie Excel: od A do Z i dalej

Jak automatycznie wypełniać litery w programie Excel: od A do Z i dalej

Generuj litery od A do Z, małe litery lub etykiety powyżej Z w programie Excel za pomocą formuły z uchwytem wypełniania, SEKWENCJI lub wielokrotnego użytku listy niestandardowej.

Jak przekreślić tekst w programie Excel: skróty i metody krok po kroku

Jak przekreślić tekst w programie Excel: skróty i metody krok po kroku

Dowiedz się, jak przekreślać wiersze w programie Excel w systemie Windows, na komputerze Mac i w przeglądarce, formatować część komórki i usuwać wiersze bez usuwania ich wartości.

Czym jest Microsoft Access? Jak działają jego narzędzia bazodanowe

Czym jest Microsoft Access? Jak działają jego narzędzia bazodanowe

Microsoft Access to aplikacja bazy danych systemu Windows do przechowywania powiązanych rekordów, tworzenia zapytań, tworzenia formularzy wprowadzania danych i generowania raportów. Dowiedz się, jak działa i kiedy się sprawdza.

Importowanie i eksportowanie danych z programu Office Outlook 2010: przenoszenie danych za pomocą pliku PST

Importowanie i eksportowanie danych z programu Office Outlook 2010: przenoszenie danych za pomocą pliku PST

Dowiedz się, jak zaimportować plik PST do programu Outlook 2010 lub wyeksportować pocztę, kontakty, kalendarz i zadania. Postępuj zgodnie z odpowiednimi menu i unikaj pominiętych folderów lub duplikatów.

Zmiana wysokości i szerokości linii siatki w programie Word 2010

Zmiana wysokości i szerokości linii siatki w programie Word 2010

Dowiedz się, jak dostosować wysokość i szerokość linii siatki w programie Word 2010, zmienić widoczną częstotliwość linii oraz ustawić odstępy między liniami siatki w pionie i w poziomie.

Jak wstawić aktywną stronę internetową do slajdu programu PowerPoint

Jak wstawić aktywną stronę internetową do slajdu programu PowerPoint

Za pomocą dodatku LiveWeb możesz umieścić witrynę internetową na slajdzie programu PowerPoint, ustawić jej rozmiar i sposób odświeżania oraz sprawdzić zgodność przed prezentacją.

Odzyskiwanie hasła PST programu Outlook za pomocą jądra Nucleus

Odzyskiwanie hasła PST programu Outlook za pomocą jądra Nucleus

Odzyskaj zapomniane hasło PST programu Outlook, korzystając z bieżących instrukcji Kernela, obejmujących m.in. identyfikację właściwego pliku, wykonanie kopii zapasowej i sprawdzenie ograniczeń narzędzia.

Dodaj święta narodowe do kalendarza Outlook

Dodaj święta narodowe do kalendarza Outlook

Dodaj święta krajowe w nowym Outlooku, Outlooku w przeglądarce lub klasycznej wersji Outlooka. Dowiedz się, jak unikać duplikatów wydarzeń i sprawdzać, czy nie brakuje dat z lat 2026–2027.