Pokud se Vám klient po nějaké době používání začíná zasekávat, intenzivně přitom využívá CPU až nakonec přestane reagovat úplně, máte s největší pravděpodobností nastaveno málo paměti pro Java proces. Typicky může tato situace nastávat při generování tiskových sestav nebo provádění exportů s větším objemem dat.
Identifikace problému
Tento krok lze vynechat. Problém nedostatku paměti lze ověřit spuštěním klienta z příkazové řádky (terminálu), za předpokladu použití stejné konfigurace paměti jako při normálním spuštění (viz konfigurační soubory). Spustit klienta z příkazové řádky je možné těmito způsoby:
Windows: C:\Program Files (x86)\WinStrom\spustit-winstrom.bat před spuštěním porovnejte parametry v tomto souboru se souborem parametry.txt
Linux: v terminálovém okně spustit /usr/bin/flexi shodné s normálním spuštěním aplikace
MacOS: v terminálovém okně spustit
/Applications/FlexiBee.app/Contents/MacOS/JavaAppLauncher
(na starších verzích Flexi je příkaz/Applications/FlexiBee.app/Contents/MacOS/flexibee-console
) - před spuštěním porovnejte parametry v tomto souboru s konfigurací v Info.plist
V konzoli se pak při zasekávání způsobeném nedostatkem paměti zobrazují tyto chyby:
java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: GC overhead limit exceeded
Úprava parametrů
Hodnoty parametrů ovlivňující maximální velikost paměti pro aplikaci lze změnit v těchto konfiguračních souborech:
Windows: C:\Program Files (x86)\WinStrom\parametry.txt, resp. na cestě kam jste provedli instalaci Flexi
Linux: /etc/default/flexibee doplnit parametr: FLEXIBEE_JAVA_ARGS="${FLEXIBEE_JAVA_ARGS} -Xms1g -Xmx2g"
MacOS: /Applications/FlexiBee.app/Contents/Info.plist upravit parametr <string>-Xmx1g</string> (v poslední kolekci array)
Nastavení paměti Javy je ve většině případů individuální, v závislosti na způsobu práce s příslušnou Java aplikací. Pokud by Vás zajímalo více o tom, jak pracuje Java s pamětí a jak nastavit její různé parametry, můžete čerpat z následujícího odkazu.
Při provádění pokročilejších změn v parametrech doporučujeme sledovat aktuální využití paměti a její uvolňování pomocí tohoto nástroje.
Doporučené hodnoty parametrů:
Minimum | Doporučené zvýšení |
Java heap -Xmx1g | -Xmx1500m |
Pokud potřebujete více než 1GB paměti, doporučujeme používat 64bit Javu. 32bit Java má limit mezi 1 - 1,2 GB, záleží na operačním systému. V případě, že provedete reinstalaci balíčku, bude potřeba provést nastavení parametrů bohužel znovu (platí pro Windows a MacOS).