2016-02-29 135 views
1

我正在尝试调整RAM正确共享,但存在问题。我在我的服务器上测试了一些来自stackoverflow的解决方案,但是没有取得任何结果当我运行这个命令时,没有问题。Java:VM初始化期间发生错误

export _JAVA_OPTIONS='-Xms16m -Xmx64m' 

然后我从命令提示符下运行java -version

Picked up _JAVA_OPTIONS: -Xms16m -Xmx64m 
java version "1.7.0_95" 
OpenJDK Runtime Environment (rhel-2.6.4.0.el6_7-x86_64 u95-b00) 
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode) 

不过,我想增加的窗口大小,但它不能执行:

export _JAVA_OPTIONS='-Xms16m -Xmx128m' 

上面的命令后,当我再次运行java -version,我有这个错误:

Picked up _JAVA_OPTIONS: -Xms16m -Xmx128m 
Error occurred during initialization of VM 
Cannot create VM thread. Out of system resources. 

这是free -m输出:

   total  used  free  shared buffers  cached 
Mem:   2048  961  1086   6   0  397 
-/+ buffers/cache:  564  1483 
Swap:   0   0   0 

如果问题是不能的我的服务器的内存,我升级到2 GB的前1 GB。我还有多久才能升级它以正确运行Java?我该怎么办?

编辑:

这里是ulimit -a输出:

core file size   (blocks, -c) 0 
data seg size   (kbytes, -d) unlimited 
scheduling priority    (-e) 0 
file size    (blocks, -f) unlimited 
pending signals     (-i) 1030823 
max locked memory  (kbytes, -l) 64 
max memory size   (kbytes, -m) 524288 
open files      (-n) 1024 
pipe size   (512 bytes, -p) 8 
POSIX message queues  (bytes, -q) 819200 
real-time priority    (-r) 0 
stack size    (kbytes, -s) 10240 
cpu time    (seconds, -t) unlimited 
max user processes    (-u) 1030823 
virtual memory   (kbytes, -v) 524288 
file locks      (-x) unlimited 
+0

我会建议尝试的想法[这里](http://stackoverflow.com/questions/116640/low-java-single-process-thread-limit-in- red-hat-linux),看看是否能解决它。 – resueman

+0

奇怪!如果你只是''设置'_JAVA_OPTIONS'环境变量并调用'java --version'命令会发生什么呢? –

+0

@resueman谢谢。我看过想法,但他们没有解决我的问题。 – Stewie

回答

1

从你的ulimit输出看起来像你的虚拟内存和最大内存大小设置为几乎一半技嘉,因此,不论多少你有这个RAM会限制你。尝试增加他们在这里阅读更多:http://www.unixarena.com/2013/12/how-to-increase-ulimit-values-in-redhat.html

+0

谢谢你宝贵的回复。这看起来可能是解决方案,但我怎么能知道我的服务器的合适价值? – Stewie

+0

我猜猜错了!假设你有2个参数,那么将这些参数设置为1 GB是足够安全的。尝试逐渐增加,直到你的-Xmx值不会崩溃。 – pleft

+0

非常感谢。我解决了我的问题。 – Stewie

相关问题