[fess-user 887] Windows7でのJavaがメモリを使い切る問題

Back to archive index

Park Kun k-par****@genda*****
2014年 9月 4日 (木) 13:25:25 JST


いつも大変お世話になっております。

表題の件ですが、

Windows7 x64、物理メモリ32GB、
Core1が250Gbほど、300万ドキュメント数でFessを回していますが〜

Setenv.batではXmx6gにしてしているにも関わらず、
タスクマネージャーで見ると、java.exeが2本で合計20Gbその他もろもろ
物理メモリ100%使っている状況となっております。
どこかで、制限掛けられないでしょうか?

他に、crawler.shとfess.diconでもメモリ関係のオプションを見つけましたが、
お互いにどのような関係でしょうか?

英文で色々文献を探してみる、OSのキャッシュ機能の問題だ?ということも
ありましたが、Linuxなどに引っ越ししたほうが良いでしょうか?


Setenv.batは以下のように若干いじっています。

@echo off

set JAVA_OPTS=%JAVA_OPTS% -Dsolr.solr.home="%CATALINA_HOME%\solr"
-Dfess.log.file="%CATALINA_HOME%\webapps\fess\WEB-INF\logs\fess.out" -Dsolr.
log.file="%CATALINA_HOME%\logs\solr.log" -Djava.awt.headless=true -server
-Xmx6g -XX:+UseTLAB -XX:+DisableExplicitGC

for /f tokens^=2-5^ delims^=.-_^" %%j in ('java -fullversion 2^>^&1') do set
"jver=%%j%%k"
if %jver% GTR 17 (
set JAVA_OPTS=%JAVA_OPTS%
 -XX:MaxMetaspaceSize=5g
 -XX:CompressedClassSpaceSize=3g
 -XX:-UseGCOverheadLimit
 -XX:+UseConcMarkSweepGC
 -XX:CMSInitiatingOccupancyFraction=50
 -XX:+UseParNewGC
 -XX:+OptimizeStringConcat

 ) else (
set JAVA_OPTS=%JAVA_OPTS%
 -XX:MaxPermSize=5g
 -XX:-UseGCOverheadLimit
 -XX:+UseConcMarkSweepGC
 -XX:CMSInitiatingOccupancyFraction=50
 -XX:+CMSIncrementalMode
 -XX:+CMSIncrementalPacing
 -XX:CMSIncrementalDutyCycleMin=0
 -XX:+UseParNewGC
 -XX:+UseStringCache
 -XX:+UseCompressedStrings
 -XX:+OptimizeStringConcat
 -XX:+UseCompressedOops

 -XX:+CMSParallelRemarkEnabled

rem -XX:+UseCompressedOops if 64bit OS
rem -XX:+UseCompressedStrings if java6u20 or above
rem -XX:+OptimizeStringConcat if java6u21 or above
 )

-------------------------------------

fess.diconでは、

<property
name="logFilePath">@System @ getProperty("fess.log.file").replaceAll(".out",
"_crawler.out")</property>
<property name="crawlerJavaOptions">
@System @ getProperty("java.version").startsWith("1.7") ?
new String[] {
"-Djava.awt.headless=true",
"-server",
"-Xmx12g",
"-XX:MaxPermSize=4g",
"-XX:-UseGCOverheadLimit",
"-XX:+UseConcMarkSweepGC",
"-XX:CMSInitiatingOccupancyFraction=60",
"-XX:+CMSIncrementalMode",
"-XX:+CMSIncrementalPacing",
"-XX:CMSIncrementalDutyCycleMin=0",
"-XX:+UseParNewGC",
"-XX:+UseStringCache",
"-XX:+UseTLAB",
"-XX:+DisableExplicitGC"
}
:
new String[] {
"-Djava.awt.headless=true",
"-server",
"-Xmx12g",
"-XX:MaxMetaspaceSize=6g",
"-XX:CompressedClassSpaceSize=2g",
"-XX:-UseGCOverheadLimit",
"-XX:+UseConcMarkSweepGC",
"-XX:CMSInitiatingOccupancyFraction=60",
"-XX:+UseParNewGC",
"-XX:+UseTLAB",
"-XX:+DisableExplicitGC"
}
</property>

-------------------------------------

crawler.shでは、

FESS_OPTS="$FESS_OPTS -Dfess.crawler.process=true -Djava.awt.headless=true
-server
 -XX:+UseGCOverheadLimit
 -XX:+UseConcMarkSweepGC
 -XX:+CMSIncrementalMode
 -XX:+UseTLAB
 -Xmx12g
 -XX:MaxPermSize=4g

 -XX:CMSInitiatingOccupancyFraction=60
 -XX:+CMSIncrementalPacing
 -XX:CMSIncrementalDutyCycleMin=0
 -XX:+UseParNewGC
 -XX:+UseStringCache
 -XX:+UseCompressedStrings
 -XX:+OptimizeStringConcat
 -XX:+UseCompressedOops
 -XX:+CMSParallelRemarkEnabled
 "

と設定しております。


以上、大変お手数掛けますがよろしくお願い致します。




Fess-user メーリングリストの案内
Back to archive index