0

我有一个运行 Centos 的 VPS,其中包含以下详细信息:

[root@XXXXXXX~]# uname -a

Linux xxxxxxxx2.6.32-042stab055.10 #1 SMP Thu May 10 15:38:32 MSD 2012 i686 i686 i386 GNU/Linux

我正在尝试从安装在其上的 tomcat 运行电子商务系统 shopizer。我曾尝试在 VPS 上构建它但没有成功,所以我在其他地方构建它并将战争文件复制到 VPS 的 tomcat 上。

我现在和构建期间面临的问题是,当我运行构建的 ant 脚本时,构建挂起。现在当我启动tomcat服务器时,其详细信息如下:

Server version: Apache Tomcat/6.0.35
Server built:   Nov 28 2011 11:20:06
Server number:  6.0.35.0
OS Name:        Linux
OS Version:     2.6.32-042stab055.10
Architecture:   i386
JVM Version:    1.6.0_24-b24
JVM Vendor:     Sun Microsystems Inc.

服务器在启动时挂起,当我进行线程转储(在这种情况下和构建情况下)时,我得到以下信息:

"GC Daemon" daemon prio=10 tid=0xa09fd000 nid=0x36ef in Object.wait() [0xa08f7000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa6c35a88> (a sun.misc.GC$LatencyLock)
    at sun.misc.GC$Daemon.run(GC.java:117)
    - locked <0xa6c35a88> (a sun.misc.GC$LatencyLock)

"Low Memory Detector" daemon prio=10 tid=0xb7686000 nid=0x36ed runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"C1 CompilerThread0" daemon prio=10 tid=0xb7684000 nid=0x36ec runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0xb7682800 nid=0x36eb waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0xb7673000 nid=0x36ea in Object.wait() [0xa0ffe000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa6ad0b58> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:133)
    - locked <0xa6ad0b58> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:149)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:177)

"Reference Handler" daemon prio=10 tid=0xb7671800 nid=0x36e9 in Object.wait() [0xa1198000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa6ad0a58> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:502)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
    - locked <0xa6ad0a58> (a java.lang.ref.Reference$Lock)

"main" prio=10 tid=0xb7605c00 nid=0x36e7 runnable [0xb775d000]
   java.lang.Thread.State: RUNNABLE
    at java.lang.Byte$ByteCache.<clinit>(Byte.java:79)
    at java.lang.Byte.valueOf(Byte.java:102)
    - waiting on <0xa6ad0a58> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:502)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
    - locked <0xa6ad0a58> (a java.lang.ref.Reference$Lock)

"main" prio=10 tid=0xb7605c00 nid=0x36e7 runnable [0xb775d000]
   java.lang.Thread.State: RUNNABLE
    at java.lang.Byte$ByteCache.<clinit>(Byte.java:79)
    at java.lang.Byte.valueOf(Byte.java:102)
    at com.opensymphony.xwork2.conversion.impl.DefaultTypeConverter.<init>(DefaultTypeConverter.java:59)
    at com.opensymphony.xwork2.conversion.impl.XWorkConverter.<init>(XWorkConverter.java:186)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
    at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:419)
    at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:207)
    at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51)
    - locked <0xa18cf408> (a com.opensymphony.xwork2.inject.ContainerImpl)
    at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:462)
    at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:477)
    at com.opensymphony.xwork2.inject.ContainerImpl.access$000(ContainerImpl.java:34)
    at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:293)
    at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:431)
    at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:207)
    at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51)
    - locked <0xa18cf408> (a com.opensymphony.xwork2.inject.ContainerImpl)
    at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:462)
    at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:477)
    at com.opensymphony.xwork2.inject.ContainerImpl.access$000(ContainerImpl.java:34)
    at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:293)
    at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:431)
    at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:207)
    at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51)
    - locked <0xa18cf408> (a com.opensymphony.xwork2.inject.ContainerImpl)
    at com.opensymphony.xwork2.inject.ContainerImpl$ParameterInjector.inject(ContainerImpl.java:462)
    at com.opensymphony.xwork2.inject.ContainerImpl.getParameters(ContainerImpl.java:477)
    at com.opensymphony.xwork2.inject.ContainerImpl.access$000(ContainerImpl.java:34)
    at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:293)
    at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:431)
    at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:207)
    at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51)
    - locked <0xa18cf408> (a com.opensymphony.xwork2.inject.ContainerImpl)
    at com.opensymphony.xwork2.inject.ContainerBuilder$3.create(ContainerBuilder.java:93)
    at com.opensymphony.xwork2.inject.ContainerBuilder$7.call(ContainerBuilder.java:487)
    at com.opensymphony.xwork2.inject.ContainerBuilder$7.call(ContainerBuilder.java:484)
    at com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:574)
    at com.opensymphony.xwork2.inject.ContainerBuilder.create(ContainerBuilder.java:484)
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.createBootstrapContainer(DefaultConfiguration.java:252)
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
    - locked <0xa37c05b0> (a com.opensymphony.xwork2.config.impl.DefaultConfiguration)
....
....
..
"VM Thread" prio=10 tid=0xb766d800 nid=0x36e8 runnable 

"VM Periodic Task Thread" prio=10 tid=0xb7688400 nid=0x36ee waiting on condition 

JNI global references: 911

Heap
 def new generation   total 39424K, used 5740K [0xa1580000, 0xa4040000, 0xa6ad0000)
  eden space 35072K,  12% used [0xa1580000, 0xa19a8e88, 0xa37c0000)
  from space 4352K,  34% used [0xa37c0000, 0xa3932570, 0xa3c00000)
  to   space 4352K,   0% used [0xa3c00000, 0xa3c00000, 0xa4040000)
 tenured generation   total 87424K, used 1432K [0xa6ad0000, 0xac030000, 0xb1580000)
   the space 87424K,   1% used [0xa6ad0000, 0xa6c36038, 0xa6c36200, 0xac030000)
 compacting perm gen  total 12288K, used 11825K [0xb1580000, 0xb2180000, 0xb5580000)
   the space 12288K,  96% used [0xb1580000, 0xb210c588, 0xb210c600, 0xb2180000)
No shared spaces configured.

我可以做些什么来解决这个问题,或者它是在 VPS 上运行的 java 的错误/问题?

B) jvm 有时会在同一个 VPS 上崩溃并出现以下错误:

[root@xxxxxx ~]# java
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
[root@xxxxxx ~]# free
             total       used       free     shared    buffers     cached
Mem:       1155072     561320     593752          0          0     317124
-/+ buffers/cache:     244196     910876
Swap:            0          0          0

对我来说很奇怪,谁能解释我这种行为。

4

1 回答 1

0

我建议您尝试更新您的操作系统和 JVM。

我认为这次崩溃是由于您的实际配置中的错误造成的。

于 2013-03-26T23:07:37.810 回答