【问题标题】:Increasing Jetty/Solr heapspace增加 Jetty/Solr 堆空间
【发布时间】:2013-11-05 13:41:08
【问题描述】:

我正在使用 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" 

毕竟运行了一段时间控制台窗口显示错误:

Java 堆空间不足

我如何查看现在分配了多少堆空间以及如何增加它?我读到需要在启动命令中添加-Xmx500M之类的参数,但我不知道在哪里。

更新

使用 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

带参数

bash -c "cd /cygdrive/c/Databases/apache-solr-3.5.0/example/;java -Dsolr.solr.home="./example-DIH/solr/" -jar -Xmx200m -Xmx400m开始.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

【问题讨论】:

    标签: memory solr cygwin jetty heap-size


    【解决方案1】:

    您需要在start.jar 之前添加-Xmx500m

    附加信息-

    Initial Heap size -Xms<size>
    Maximum Heap size -Xmx<size>
    

    要找出当前运行进程的堆大小,您需要jstat -gc &lt;pid&gt;。详情请看here

    【讨论】:

    • 谢谢。有没有办法查看当前分配的内容?另外我相信有一种方法可以设置最小堆空间和最大堆空间?你知道怎么做吗?
    • 在答案中添加了信息
    • 再次感谢。我怎样才能启动jstat?我在 JRE 文件夹的 \bin 文件夹中没有看到。我如何找到pid?我检查了我的任务管理器,但我没有看到 Jetty、Cygwin 或 Solr 进程,只有一个 java.exe
    • 知道如何启动 jstat 并找到相关的 pid 吗?谢谢!
    猜你喜欢
    • 2016-05-25
    • 1970-01-01
    • 2012-04-07
    • 2011-03-25
    • 2016-11-26
    • 2012-01-25
    • 1970-01-01
    • 2019-01-23
    • 1970-01-01
    相关资源
    最近更新 更多