Temat: Jvm - uwagi
Temat: | Jvm - uwagi |
Data: | 2014-02-11 |
Treść: |
Postanowiłem, że muszę bliżej przyjerzeć się zagadnieniom związanym z jvm, tak aby nie tylko rozrużniać jdk od jre oraz ustawia pamięci. Ma to znaczący wpływ na działanie aplikacji. Oto uwagi: 1. Słynny JRockit zastał przez pewien czas skomercjalizowany, natomiast od wersji 7.40 dostępny jest już w standardowym JDK. Znajduje się tu super narzędzie jmc! 2. Jvm można uruchomić z parametrem client bądź serwer. Zacznijmy np od: http://javapapers.com/core-java/jvm-server-vs-client-mode/ . 3. Nigdy nie pozostawiaj jvm samego sobie, nie uruchamia programów po prostu polecenim java -jar program.jar. Taki pozostawiony na wolności jvm może mocno nabruzdzić w systemie. 4. http://blog.headius.com/2009/01/my-favorite-hotspot-jvm-flags.html 5. Aby uniknąć pełnego GC z poziomu kodu (za pomocą polecenia System.gc()) należy dla JVM dodać opcję -XX:+DisableExplicitGC. Generalnie wywołanie z poziomu kodu czyszczenia GC uważa się za zły pomysł. 6. A oto przykładowe wywołanie: set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8 -server -XX:MaxPermSize=128m -XX:+UseParNewGC -XX:MaxNewSize=512m -XX:NewSize=512m -Xms1536m -Xmx1536m -XX:SurvivorRatio=128 -XX:MaxTenuringThreshold=0 -XX:+UseTLAB -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -verbose:gc -Xloggc:d:\drk\temp\jvm_gc.log -XX:+PrintGCDateStamps |
<< Powrót << |
powered by sw