Flo*_*Flo 6 memory cygwin solr jetty heap-size
我正在使用Jetty和Solr431运行Cygwin.
这是我用来启动Solr的.bat文件的内容:
@echo off
C:
chdir C:\cygwin\bin
bash -c "cd /cygdrive/c/Databases/apache-solr-3.5.0/example/; java -Dsolr.solr.home="./example-DIH/solr/" -jar start.jar"
Run Code Online (Sandbox Code Playgroud)
在运行一段时间后,控制台窗口显示错误:
Java堆空间内存不足
如何查看现在分配了多少堆空间,如何增加它?我读到我需要添加一个类似于-Xmx500M启动命令的参数,但我不知道在哪里.
UPDATE
用jps命令我找到了正确的PID.
然后我得到了这些结果.我认为该P列将显示允许的堆空间,但我不知道我的命令参数是否有任何影响?
没有任何启动参数
jstat -gcutil 4932 5000
S0 S1 E O P YGC YGCT FGC FGCT GCT
100,00 0,00 74,91 65,67 99,23 300 0,348 4 0,146 0,494
100,00 0,00 74,91 65,67 99,23 300 0,348 4 0,146 0,494
Run Code Online (Sandbox Code Playgroud)
带参数
bash -c"cd /cygdrive/c/Databases/apache-solr-3.5.0/example/;java -Dsolr.solr.home ="./ example-DIH/solr /" - jar -Xmx200m -Xmx400m start.jar "jstat -gcutil 2548 5000
S0 S1 E O P YGC YGCT FGC FGCT GCT
0,00 89,57 67,80 62,74 99,45 307 0,337 4 0,147 0,484
0,00 89,57 67,80 62,74 99,45 307 0,337 4 0,147 0,484
Run Code Online (Sandbox Code Playgroud)
您需要在-Xmx500m之前添加start.jar.
附加信息 -
Initial Heap size -Xms<size>
Maximum Heap size -Xmx<size>
Run Code Online (Sandbox Code Playgroud)
查找当前正在运行的进程的堆大小jstat -gc <pid>.详情请看这里.