Testa Immich med en enda upprepningsbar åtgärd, koppla dess latens till resursväntetider och bekräfta den misstänkta flaskhalsen genom ett kontrollerat ingrepp.
En ögonblicksbild av en instrumentpanel kan inte skilja nyttig aktivitet från skadlig konkurrens om resurser. Mät en enda slutpunkt – exempelvis godkännande av uppladdning, visning av miniatyrbilder eller svar från smart sökning – under fasta medie- och klientförhållanden och ändra sedan endast den misstänkta begränsande resursen.
Definiera en slutpunkt och en reproducerbar baslinje
Börja med att beskriva slutpunkten i observerbara termer. ”Immich är långsamt” går inte att testa, men ”samma tjugo miniatyrbilder i tidslinjen tar fyra sekunder att visas efter en omstart” gör det. Lås klient, nätverkssökväg, konto, fotoalbum och startförhållande så att senare körningar endast skiljer sig åt genom en avsiktlig variabel.
Immichs datasökvägsmodell visar att uppladdning, bearbetning, databasanrop och mediedistribution passerar genom olika beroenden. Ett test som fokuserar på sökresultat bör mäta resultatlistan separat från bildrenderingen. Annars rapporteras en snabb sökning följd av långsamma filläsningar som en enda odifferentierad fördröjning.
Kör baslinjen minst tre gånger och spara både medianen och den långsammaste relevanta percentilen. Registrera ködjup, processoranvändning per container, minnestryck, växlingsaktivitet, nätverkstrafik och omsändningar, disklatens samt I/O-ködjup. Ett påstående om en flaskhals måste koppla resursens signal till slutpunktens fördröjning.
Skilj processorbelastning från minnestryck
Vid en processorbegränsad körning väntar körbart arbete på processortid, så slutpunktens latens bör följa en varaktigt hög kärnbelastning eller strypning. En minnesbegränsad körning kan i stället visa återvinning, växling, avslutade containrar eller upprepad modellinläsning. Båda kan få processor grafer att se upptagna ut, men deras ingrepp ger olika resultat.
En aktuell oberoende resursguide för Immich delar upp användningen mellan servern, PostgreSQL, Redis och maskininlärningskomponenterna i stället för att behandla det totala RAM-minnet som ett enda krav. Den synen på tjänstenivå är viktig eftersom ledigt minne på värddatorn kan samexistera med en för låg containergräns, medan en stor filcache inte automatiskt innebär minnesbrist.
Verifiera processortryck genom att sänka samtidigheten för bakgrundsarbetare eller tilldela mer processorkapacitet medan minnet hålls konstant. Verifiera minnestryck genom att ta bort växlingsaktivitet eller höja en begränsad minnesgräns utan att ändra antalet arbetare. Om slutpunkten inte förbättras konsekvent ska du avfärda den resursen som den primära begränsningen i detta test.
Skilj nätverksfördröjning från lagringsfördröjning
Nätverks- och lagringsbegränsningar uppträder ofta tillsammans eftersom fjärrmedier passerar genom båda. En överbelastad länk begränsar överförda byte per sekund, medan lagringskonkurrens ökar tiden tills läsningar eller skrivningar slutförs, även på en lugn länk. Testning från endast en fjärrklient kan därför hänföra långsam filleverans till fel lager.
Kingstons SSD-analys betonar bakgrundsarbete, inbyggd programvara, cachelagring och värddatorns kommandon, som påverkar lagringens svarstid utöver den angivna sekventiella topphastigheten. För Immich ger många små miniatyrbilds- och databasoperationer mer informativa resultat för latens och köbeteende än ett enda bandbreddstest med en stor fil.
Upprepa slutpunktstestet från en trådbunden lokal klient och sedan från den normala fjärranslutningen utan att ändra serverns dataset. Läs separat en representativ uppsättning filer på värddatorn och övervaka enhetens latens. Förbättring endast hos den lokala klienten pekar på nätverkssökvägen; kvarstående väntetider på värddatorsidan pekar på lagringen eller dess monteringspunkt.
Använd en åtgärdsmatris för att godkänna eller avfärda varje orsak
Skriv fyra rader före testningen: processor, minne, nätverk och lagring. Ge varje rad ett förväntat symtom, ett riktat ingrepp och ett villkor för avfärdande. Det hindrar diagnosen från att ändras efter att resultaten har visat sig och gör ett negativt resultat användbart i stället för att bli ett skäl att köpa flera uppgraderingar på en gång.
En offentlig fält rapport om Immich med fördröjda miniatyrbilder trots betydande internetbandbredd visar varför specifikationer ensamma inte räcker. Det relevanta beviset är om en riktad förändring påverkar den uppmätta slutpunkten medan mediekohorten, cacheförhållandet, jobben, klienten och programversionen förblir oförändrade.
Godkänn processor som orsak endast om minskad processorbelastning förbättrar latensen, minne endast om minskad återvinning gör det, nätverk endast om förbättring av nätverkssökvägen gör det och lagring endast om minskad väntetid på enheten eller monteringspunkten gör det. Om två ingrepp hjälper ska du upprepa dem i båda ordningarna, eftersom den andra flaskhalsen kanske blir synlig först när den första har tagits bort.
Teknik- och AI-hubb
Mer att läsa

Vad är Immichs tillstånd, och vilka delar måste bevaras?
Immich-tillståndet omfattar original, databasrelationer, identitet, konfiguration och härledda filer; bevara varje del utifrån om den kan återskapas.

Hur hanterar Immich autentisering för lokala och fjärranslutna sessioner?
Immich använder serverbaserad identitet med klientsessioner, medan proxyhuvuden, ursprung och OIDC-omdirigeringar kan göra att lokalt och på distans beter sig olika.

Vad gör att Immichs sökningar eller frågeresultat blir långsammare när datamängden växer?
Immich-tillväxt kan göra index större, tränga undan ofta använda sidor, komplicera filter och fördröja mediedistributionen; separera dessa steg innan du finjusterar.

