Hosta Jellyfin nie należy dobierać wyłącznie na podstawie liczby zarejestrowanych użytkowników. Jedno gospodarstwo domowe z ośmioma kontami może generować mniejsze obciążenie niż dwóch zdalnych widzów odtwarzających wideo 4K z transkodowaniem, podczas gdy w tle trwa skanowanie biblioteki, zadanie napisów i tworzenie kopii zapasowej. Przydatne pytanie dotyczące wydajności brzmi: ile jednoczesnych zadań pierwszoplanowych i wykonywanych w tle host może obsłużyć, zanim odtwarzanie lub administracja przestaną spełniać założone wymagania.
Utwórz jeden budżet obciążenia obejmujący sesje odtwarzania, transkodowanie, zaplanowane zadania, aktywność pamięci masowej oraz usługi działające na tym samym hoście. Następnie przetestuj największe typowe nakładanie się obciążeń i przestań zwiększać obciążenie, gdy pierwszy współdzielony zasób zacznie wykazywać trwałe kolejki, błędy lub opóźnienia odczuwalne przez użytkowników.
Przekształć liczbę użytkowników w obciążenia związane z odtwarzaniem
Sesje bezpośredniego odtwarzania, remuksu, konwersji dźwięku i transkodowania wideo licz osobno. Klienci Jellyfin zgłaszają obsługiwane kodeki, rozdzielczości, przepływności i ograniczenia, dlatego dwóch użytkowników oglądających to samo źródło może wymagać od serwera zupełnie innej pracy.
Zapotrzebowanie serwera może zmieniać także polityka użytkowników Jellyfin. Obecne elementy sterowania zarządzaniem użytkownikami pozwalają zezwalać na dostęp zdalny, odtwarzanie multimediów, transkodowanie i ograniczać przepływność internetową poszczególnych strumieni. Liczba użytkowników staje się więc przydatna dopiero po przełożeniu jej na uprawnienia i tryby odtwarzania oczekiwane w tym samym czasie.
Zacznij od najtrudniejszego typowego wieczornego scenariusza, a nie od teoretycznej maksymalnej liczby kont. Jeśli w gospodarstwie domowym zwykle działają dwie lokalne sesje bezpośredniego odtwarzania i jedna zdalna konwersja, to właśnie taki poziom host musi komfortowo obsłużyć.
Uwzględnij zaplanowane zadania w tym samym budżecie wydajności
Jellyfin wykonuje pracę nawet wtedy, gdy nikt nie naciska przycisku Odtwarzaj. Skanowanie biblioteki, pobieranie napisów, czyszczenie pamięci podręcznej, aktualizacje wtyczek, generowanie obrazów rozdziałów, optymalizacja bazy danych i zadania związane z generowaniem multimediów mogą nakładać się na oglądanie.
Obecna lista zaplanowanych zadań pokazuje, że Jellyfin może w tle wykonywać skanowanie, generowanie obrazów, aktualizacje wtyczek, konserwację bazy danych, obsługę napisów, czyszczenie pamięci podręcznej i inne zadania. Wtyczki mogą dodawać kolejne zadania.
Nie dobieraj serwera na podstawie testu odtwarzania przy małym obciążeniu, a następnie nie uruchamiaj wszystkich ciężkich zadań w tym samym okresie szczytowym. W pierwszej kolejności przenieś zadania, które można odroczyć, poza godziny oglądania; zadania, które muszą działać równolegle, uwzględnij w teście produkcyjnym.
Znajdź pierwszy współdzielony zasób, który traci zapas wydajności
Host może zawieść z powodu przepustowości silnika multimediów, procesora, pamięci, opóźnień dysku SSD, obciążenia operacjami wyszukiwania na dysku HDD, przepustowości sieci lub zależności zewnętrznej. Większa liczba rdzeni procesora nie pomoże, gdy wysycone jest łącze wysyłania danych, a większa ilość pamięci RAM nie naprawi transkodowania, którego wybrany układ GPU nie może przyspieszyć.
Analiza ZimaSpace dotycząca wydajności Jellyfin na małym serwerze domowym wykorzystuje ten sam model oparty na obciążeniu: ważniejsze od limitu liczby kont są jednoczesne wymagania i pierwszy wysycony zasób.
Podczas dokładnie takiego nakładania się obciążeń zmierz prędkość transkodowania, wysycenie procesora lub silnika multimediów, presję na pamięć, opóźnienia pamięci masowej i przepustowość sieci. Zasobem ograniczającym jest ten, którego obciążenie rośnie wraz z wystąpieniem awarii i maleje po usunięciu tego obciążenia.
Nie pozwól, aby zadania wykonywane w tle zużywały zapas wydajności interaktywnej
Odtwarzanie ma określony termin: następny fragment musi dotrzeć, zanim opróżni się bufor klienta. Skanowanie biblioteki zwykle może zakończyć się później bez szkody dla użytkowników. Ta różnica powinna kształtować harmonogram i zasady przydzielania zasobów.
Zapewnij wystarczający zapas wydajności, aby rozpoczęcie odtwarzania lub przewijanie pozostało responsywne podczas kontynuowania nieuniknionych zadań w tle. Jeśli optymalizacja bazy danych lub zadanie analizy multimediów powoduje buforowanie, zmień ich harmonogram albo ogranicz zadanie, zanim kupisz większy serwer.
Na współdzielonym hoście powtórz test przy aktywnych innych kontenerach. Program do pobierania danych, indeksator zdjęć, narzędzie do tworzenia kopii zapasowych lub lokalny proces AI może zmniejszyć wydajność Jellyfin, nawet jeśli własne obciążenie Jellyfin się nie zmieniło.
Użyj macierzy obciążeń zamiast limitu użytkowników
| Jednoczesne zadanie | Główny obserwowany zasób | Sygnał awarii |
|---|---|---|
| Strumienie bezpośredniego odtwarzania | Pamięć masowa multimediów + sieć | Rosną kolejki odczytu lub sieciowe |
| Transkodowanie wideo | Silnik multimediów / procesor + przestrzeń robocza | Prędkość transkodowania spada poniżej czasu rzeczywistego |
| Skanowanie biblioteki | Procesor + pamięć metadanych + dyski z multimediami | Rośnie opóźnienie przeglądania lub odtwarzania |
| Generowanie obrazów / funkcji trickplay | Procesor/GPU + zapisy do pamięci masowej | Zadania interaktywne tracą zapas wydajności |
| Kopia zapasowa lub import | Pamięć masowa + sieć | Konkurencja o operacje wejścia-wyjścia lub wysycenie łącza wysyłania danych |
Publikuj wydajność jako przetestowane obciążenie, na przykład „trzy reprezentatywne strumienie i jedno zaplanowane skanowanie pozostają w założonym zakresie”, a nie „ten serwer obsługuje dziesięciu użytkowników”. Taki wynik można odtworzyć po zmianie biblioteki, klientów i sposobu korzystania przez domowników.
Konfiguracja NAS i serwera
Więcej do przeczytania

Jak analiza i automatyzacja przypominające działanie AI zmieniają wymagania dotyczące pamięci masowej i mocy obliczeniowej Jellyfin
Automatyzacja i powiązana analiza AI dodają skanowanie, dane pochodne, obciążenie CPU/GPU, pamięć podręczną, przestrzeń roboczą oraz zadania w tle wykraczające poza zwykłe odtwarzanie w...

Jak zintegrować Jellyfin z siecią w małym mieszkaniu lub wynajmowanym lokalu
Zbuduj przyjazną najemcom sieć Jellyfin, opartą na stabilnej adresacji lokalnej, minimalnej liczbie przewodów, cichym sprzęcie, zdalnym dostępie uwzględniającym CGNAT oraz odwracalnych zmianach.

Jak zmniejszyć temperaturę i aktywność dysków w stale działającej konfiguracji Jellyfin
Zmniejsz nagrzewanie i obciążenie dysków przez Jellyfin, ograniczając pracę w tle, korzystając z wydajnego przyspieszania, oddzielając aktywne dane aplikacji i testując tryb gotowości.

