# vServer und Java



## Vatar (18. September 2006)

Hiho Leute.

Bin mir jetzt nicht sicher ob ich in dieser Rubrik mit meiner Frage richtig bin, ich denke aber dass ich hier die richtigen Leute finde 

Ich habe mir jetzt einen vServer gemietet auf dem ich OpenCMS laufen lassen möchte. Nachdem ich auf der Kiste Java installiert habe musste ich aber leider feststellen, dass dieses nicht läuft

```
Could not reserve enough space for object heap
```
Es handelt sich um die günstigste Variante von Server4You mit 256 RAM und 512 FelxRAM (keine Ahnung was das ist). Eigentlich sollte das doch reichen? Ich habe auch schon mit den Java Optionen herumgespielt (-Xms32m -Xmx64m), hat aber auch nix geholfen.

Es soll einfach nur laufen...wenn OpenCMS dann etwas langsam ist auch egal...ich werde eh nicht so viel Traffic auf der Kiste haben. Und deshalb möchte ich auch nicht zu viel Geld bezahlen.

Thx


----------



## teppi (18. September 2006)

Hallo,

ich hab nen bissel gegoogelt, aber auch nur diesen -xmx Parameter als Lösung gefunden. Wenn die Eingabe eines noch niedrigen Wertes als 64 MByte nichtes bringt, sehe ich schwarz. Ich denke mal, dass es daran liegt, dass der Arbeitsspeicher bei einem vServer dynamisch verteilt wird, je nachdem wer gerade was braucht. 

Gruß Stefan


----------



## javaprogger1987 (18. September 2006)

Zitat aus der Server4You FAQ:


> *Warum startet java nicht*
> 
> Rufen Sie java mit der Option -Xmx24m auf, um den Heap auf 24MB statt 64MB zu begrenzen. Der Wert kann zwar u.U. auf 32m erhöht werden, dann bleiben aber entsprechend weniger Resourcen für die anderen Dienste übrig. Der Defaultwert von 64MB ist zu hoch für die beschränkten Resourcen des vServers.



Also klappt bei meinem VServer ohne Probleme so.. Allerdings hast du 256MB sicher da würd ich mal bei Server4You nachfragen wieso das nicht klappt..


----------



## Vatar (18. September 2006)

Erst einmal Danke für eure Hilfe.
Also es hat jetzt teilweise funktioniert, aber nur teilweise.

Mit dem Parameter -Xmx24m und -Xmx32m hats funktioniert...also dachte ich mir versuch ichs mal mit 64. Da kahm dann eine komische Fehlermeldung und der Verweis auf ein Errorlog 
	
	
	



```
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0x4058c63e, pid=15656, tid=1073932736
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_08-b03 mixed mode)
# Problematic frame:
# V  [libjvm.so+0x42863e]
#

---------------  T H R E A D  ---------------

Current thread (0x0805c6e8):  JavaThread  [_thread_in_vm, id=15656]

siginfo:si_signo=11, si_errno=0, si_code=1, si_addr=0x00000008

Registers:
EAX=0x00000000, EBX=0x4071ce50, ECX=0x4f056598, EDX=0x00003d28
ESP=0xbfffc610, EBP=0xbfffc628, ESI=0x4f056450, EDI=0x4f056450
EIP=0x4058c63e, CR2=0x00000008, EFLAGS=0x00010246

Top of Stack: (sp=0xbfffc610)
0xbfffc610:   4f056548 0805c6e8 00000003 4071ce50
0xbfffc620:   4071ce50 4070f4ac bfffc758 406351fb
0xbfffc630:   4f056450 00000000 00080000 4071b3cc
0xbfffc640:   4000c016 bfffc774 08048b97 bfffc6a0
0xbfffc650:   bfffc6e0 0805c6e8 bfffc700 bfffc730
0xbfffc660:   080590b0 00000000 00000000 40016ca0
0xbfffc670:   bfffc774 00000000 bfffc73c 4009d434
0xbfffc680:   4000bff6 00000000 40160e80 bfffc6d4 

Instructions: (pc=0x4058c63e)
0x4058c62e:   46 20 25 ff bf ff ff 89 46 20 8b 86 88 00 00 00
0x4058c63e:   c7 40 08 02 00 00 00 8b 46 20 a9 00 80 00 00 74 

Stack: [0xbfe00000,0xc0000000),  sp=0xbfffc610,  free space=2033k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x42863e]
V  [libjvm.so+0x4d11fb]
V  [libjvm.so+0x290e9c]
C  [java+0x32cc]
C  [java+0x15a4]  calloc+0x39c
C  [libc.so.6+0x15974]  __libc_start_main+0xf4


---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
=>0x0805c6e8 JavaThread  [_thread_in_vm, id=15656]

Other Threads:
  0x4f056450 VMThread

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread:  ([mutex/lock_event])
[0x0805be18/0x0805be40] Notify_lock - owner thread: 0x0805c6e8

Heap
 PSYoungGen      total 3584K, used 61K [0x4e520000, 0x4e920000, 0x4ec30000)
  eden space 3072K, 2% used [0x4e520000,0x4e52f5d0,0x4e820000)
  from space 512K, 0% used [0x4e8a0000,0x4e8a0000,0x4e920000)
  to   space 512K, 0% used [0x4e820000,0x4e820000,0x4e8a0000)
 PSOldGen        total 1408K, used 0K [0x4ac30000, 0x4ad90000, 0x4e520000)
  object space 1408K, 0% used [0x4ac30000,0x4ac30000,0x4ad90000)
 PSPermGen       total 16384K, used 447K [0x46c30000, 0x47c30000, 0x4ac30000)
  object space 16384K, 2% used [0x46c30000,0x46c9fe58,0x47c30000)

Dynamic libraries:
08048000-08057000 r-xp 00000000 90:e2 61268966   /usr/lib/jdk1.5.0_08/bin/java
08057000-08059000 rw-p 0000e000 90:e2 61268966   /usr/lib/jdk1.5.0_08/bin/java
08059000-080bf000 rw-p 08059000 00:00 0 
40000000-40016000 r-xp 00000000 90:e2 61153519   /lib/ld-2.3.2.so
40016000-40017000 rw-p 00015000 90:e2 61153519   /lib/ld-2.3.2.so
40017000-40018000 rw-p 40017000 00:00 0 
4001c000-40028000 r-xp 00000000 90:e2 61153711   /lib/tls/libpthread-0.60.so
40028000-40029000 rw-p 0000c000 90:e2 61153711   /lib/tls/libpthread-0.60.so
40029000-4002b000 rw-p 40029000 00:00 0 
4002b000-4002d000 r-xp 00000000 90:e2 61153737   /lib/tls/libdl-2.3.2.so
4002d000-4002e000 rw-p 00002000 90:e2 61153737   /lib/tls/libdl-2.3.2.so
4002e000-4002f000 rw-p 4002e000 00:00 0 
4002f000-40159000 r-xp 00000000 90:e2 61153703   /lib/tls/libc-2.3.2.so
40159000-40162000 rw-p 00129000 90:e2 61153703   /lib/tls/libc-2.3.2.so
40162000-40164000 rw-p 40162000 00:00 0 
40164000-406be000 r-xp 00000000 90:e2 59337031   /usr/lib/jdk1.5.0_08/jre/lib/i386/server/libjvm.so
406be000-40721000 rw-p 0055a000 90:e2 59337031   /usr/lib/jdk1.5.0_08/jre/lib/i386/server/libjvm.so
40721000-40b38000 rw-p 40721000 00:00 0 
40b38000-40b39000 r--p 40b38000 00:00 0 
40b39000-40b3a000 rw-p 40b39000 00:00 0 
40b3c000-40b5d000 r-xp 00000000 90:e2 61153718   /lib/tls/libm-2.3.2.so
40b5d000-40b5e000 rw-p 00020000 90:e2 61153718   /lib/tls/libm-2.3.2.so
40b5e000-40b64000 r-xp 00000000 90:e2 59337029   /usr/lib/jdk1.5.0_08/jre/lib/i386/native_threads/libhpi.so
40b64000-40b65000 rw-p 00006000 90:e2 59337029   /usr/lib/jdk1.5.0_08/jre/lib/i386/native_threads/libhpi.so
40b69000-40b7a000 r-xp 00000000 90:e2 61153716   /lib/tls/libnsl-2.3.2.so
40b7a000-40b7b000 rw-p 00011000 90:e2 61153716   /lib/tls/libnsl-2.3.2.so
40b7b000-40b7d000 rw-p 40b7b000 00:00 0 
40b7d000-40b84000 r-xp 00000000 90:e2 61153728   /lib/tls/libnss_compat-2.3.2.so
40b84000-40b85000 rw-p 00006000 90:e2 61153728   /lib/tls/libnss_compat-2.3.2.so
40b85000-40b8d000 r-xp 00000000 90:e2 61153735   /lib/tls/libnss_nis-2.3.2.so
40b8d000-40b8e000 rw-p 00007000 90:e2 61153735   /lib/tls/libnss_nis-2.3.2.so
40b8e000-40b97000 r-xp 00000000 90:e2 61153734   /lib/tls/libnss_files-2.3.2.so
40b97000-40b98000 rw-p 00008000 90:e2 61153734   /lib/tls/libnss_files-2.3.2.so
40b98000-40ba0000 rw-s 00000000 90:e2 61350591   /tmp/hsperfdata_root/15656
40ba0000-40bab000 r-xp 00000000 90:e2 59337087   /usr/lib/jdk1.5.0_08/jre/lib/i386/libverify.so
40bab000-40bac000 rw-p 0000b000 90:e2 59337087   /usr/lib/jdk1.5.0_08/jre/lib/i386/libverify.so
40bac000-40bcd000 r-xp 00000000 90:e2 59337088   /usr/lib/jdk1.5.0_08/jre/lib/i386/libjava.so
40bcd000-40bcf000 rw-p 00020000 90:e2 59337088   /usr/lib/jdk1.5.0_08/jre/lib/i386/libjava.so
40bcf000-40bde000 r-xp 00000000 90:e2 59337090   /usr/lib/jdk1.5.0_08/jre/lib/i386/libzip.so
40bde000-40be0000 rw-p 0000e000 90:e2 59337090   /usr/lib/jdk1.5.0_08/jre/lib/i386/libzip.so
40be0000-431f6000 r--s 00000000 90:e2 59337158   /usr/lib/jdk1.5.0_08/jre/lib/rt.jar
431f6000-4325f000 rw-p 431f6000 00:00 0 
4325f000-432e4000 r--s 00000000 90:e2 59337153   /usr/lib/jdk1.5.0_08/jre/lib/jsse.jar
432e4000-432f9000 r--s 00000000 90:e2 59337120   /usr/lib/jdk1.5.0_08/jre/lib/jce.jar
432f9000-43b69000 r--s 00000000 90:e2 59337156   /usr/lib/jdk1.5.0_08/jre/lib/charsets.jar
43b69000-43da9000 rwxp 43b69000 00:00 0 
43da9000-46b69000 rwxp 43da9000 00:00 0 
46b69000-46b72000 rwxp 46b69000 00:00 0 
46b72000-46c29000 rwxp 46b72000 00:00 0 
46c30000-47c30000 rwxp 46c30000 00:00 0 
47c30000-4ac30000 rwxp 47c30000 00:00 0 
4ac30000-4ad90000 rwxp 4ac30000 00:00 0 
4ad90000-4e520000 rwxp 4ad90000 00:00 0 
4e520000-4e920000 rwxp 4e520000 00:00 0 
4e920000-4ec30000 rwxp 4e920000 00:00 0 
4ec30000-4ec38000 rwxp 4ec30000 00:00 0 
4ec38000-4ec50000 rwxp 4ec38000 00:00 0 
4ec50000-4ec51000 rwxp 4ec50000 00:00 0 
4ec51000-4ec6c000 rwxp 4ec51000 00:00 0 
4ec6c000-4ec6f000 rwxp 4ec6c000 00:00 0 
4ec6f000-4ec70000 rwxp 4ec6f000 00:00 0 
4ec70000-4ec72000 rwxp 4ec70000 00:00 0 
4ec72000-4ec8e000 rwxp 4ec72000 00:00 0 
4ec8e000-4ec96000 rwxp 4ec8e000 00:00 0 
4ec96000-4ecae000 rwxp 4ec96000 00:00 0 
4ecae000-4ecaf000 ---p 4ecae000 00:00 0 
4ecaf000-4ed2e000 rwxp 4ecaf000 00:00 0 
4ed2e000-4ed2f000 ---p 4ed2e000 00:00 0 
4ed2f000-4edae000 rwxp 4ed2f000 00:00 0 
4edae000-4edaf000 ---p 4edae000 00:00 0 
4edaf000-4ee2e000 rwxp 4edaf000 00:00 0 
4ee2e000-4ee2f000 ---p 4ee2e000 00:00 0 
4ee2f000-4eeae000 rwxp 4ee2f000 00:00 0 
4f000000-4f057000 rw-p 4f000000 00:00 0 
4f057000-4f100000 ---p 4f057000 00:00 0 
bfe00000-bfe03000 ---p bfe00000 00:00 0 
bfe03000-c0000000 rw-p bfe03000 00:00 0 
ffffe000-fffff000 ---p 00000000 00:00 0 

VM Arguments:
jvm_args: -Xmx64m
java_command: <unknown>
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=usr/lib/jdk1.5.0_08
_JAVA_OPTIONS=-Xmx64m
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:usr/lib/jdk1.5.0_08/bin
LD_LIBRARY_PATH=/usr/lib/jdk1.5.0_08/jre/lib/i386/server:/usr/lib/jdk1.5.0_08/jre/lib/i386:/usr/lib/jdk1.5.0_08/jre/../lib/i386
SHELL=/bin/bash

Signal Handlers:
SIGSEGV: [libjvm.so+0x508860], sa_mask[0]=0x7ffbfeff, sa_flags=0x14000004
SIGBUS: [libjvm.so+0x508860], sa_mask[0]=0x7ffbfeff, sa_flags=0x14000004
SIGFPE: [libjvm.so+0x42cac0], sa_mask[0]=0x7ffbfeff, sa_flags=0x14000004
SIGPIPE: [libjvm.so+0x42cac0], sa_mask[0]=0x7ffbfeff, sa_flags=0x14000004
SIGILL: [libjvm.so+0x42cac0], sa_mask[0]=0x7ffbfeff, sa_flags=0x14000004
SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGUSR2: [libjvm.so+0x42ef10], sa_mask[0]=0x00000000, sa_flags=0x14000004
SIGHUP: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGINT: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGQUIT: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
SIGTERM: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000


---------------  S Y S T E M  ---------------

OS:3.1

uname:Linux 2.6.9-022stab078.14-enterprise #1 SMP Wed Jul 19 14:35:02 MSD 2006 i686
libc:glibc 2.3.2 NPTL 0.60 
rlimit: STACK 8192k, CORE 0k, NPROC infinity, NOFILE 1024, AS infinity
load average:0.00 0.01 0.03

CPU:total 4 (cores per cpu 1, threads per core 2) family 15 model 4 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ht

Memory: 4k page, physical 8297268k(103480k free), swap 3012k(2129k free)

vm_info: Java HotSpot(TM) Server VM (1.5.0_08-b03) for linux-x86, built on Jun 28 2006 00:27:00 by java_re with gcc 3.2.1-7a (J2SE release)
```
 Sorry für diesen Monsterblock  aber vielleicht is es ja nötig.

Allerdings funktioniert inzwischen auch der Aufruf mit weniger Speicher nicht mehr :-(. Da kommt jetzt eine Meldung _Could not reserve Object Space_ Wie gesagt vorher gings.


----------



## Thomas Darimont (18. September 2006)

Hallo!

Also ich könnte mir bei dieser OpenCMS Konfiguration gut vorstellen das du da zumindest die Heap Obergenze auf mindestens 128 MB stehen haben musst... (und wenn das Betriebssystem nicht mehr her gibt gehts eben nicht...)

Gruß Tom


----------



## javaprogger1987 (19. September 2006)

Also wenn da 256MB Ram steht (und 512Flex) dann solltest du Ram im Bereich von 256MB-512MB zur Verfügung haben. Zunächst würd ich dir mal raten den VServer neu zu starten, vllt hat Java Resourcen belegt die nicht richtig wieder freigegeben wurden (hatte auch auch schonmal). Kannst du einfach mit dem Befehl "reboot" machen oder über das Admin Panel.
Dann würd ich mal nachgucken was alles für Prozesse laufen und ob du die wirklich brauchst (Die nehmen ja auch Ram in Anspruch denk ich jetzt mal )
Da steht wie das geht http://www.tuxhausen.de/kurs_prozesse.html
Vorher aber genau informieren welche Prozesse du beendest - Den SSH solltest du z.B. laufen lassen, wenn du nicht die Möglichkeit verlieren willst auf den Server zuzugreifen^^


----------



## kroesi (19. September 2006)

Hi !

Da dein vServer anscheineinend unter Linux läuft kannst du dir auch ein Swap-File anstatt einer Swap-Partition einrichten. Auf den vServern sind nämlich häufig kein Swap-Partitionen eingerichtet und die Partitionstabelle kann man meist nicht ändern .... Über ein Swap-File kannst du dir theoretisch eine Menge Ram selber zuweisen ...


Bei Google findest du relativ leicht diverse Anleitungen dazu !


Gruss,

Krösi


----------



## Vatar (20. September 2006)

Danke für die Antworten...werd mich demnächst mal darum kümmern.

edit: Also der Reboot hat schon einmal geholfen, Java läuft jetzt mit 64MB Speicher. Mit 128 habe ichs noch nicht hinbekommen.


----------



## Vatar (21. September 2006)

Hab mir mal die Prozesse angeschaut und soviele laufen da eigentlich gar nicht.
Außerdem kenn ich mich nicht damit aus welche ich beenden kann/soll. Ich habe mal die Ausgabe im Code-Block 
	
	
	



```
PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:00 ini
 5914 ?        Ss     0:00 /sbin/syslogd
 5932 ?        SNs    0:00 /usr/sbin/spamd --create-prefs --max-children 1 --hel
 7265 ?        SN     0:00  \_ spamd child
 7198 ?        Ss     0:00 /usr/sbin/inetd
 7214 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe
 7262 ?        S      0:00  \_ logger -p daemon.err -t mysqld_safe -i -t mysqld
 7329 ?        Ss     0:00 /usr/sbin/saslauthd -n 1 -a pam
 7337 ?        Ss     0:00 /usr/sbin/sshd
27992 ?        Ss     0:00  \_ sshd: root@pts/0
28195 pts/0    Ss     0:00      \_ -bash
 1339 pts/0    R+     0:00          \_ ps -fx
 7350 ?        Ss     0:00 /usr/sbin/cron
 7359 ?        Ss     0:00 /usr/sbin/apache2 -k start -DSSL
 7366 ?        S      0:00  \_ /usr/bin/perl /usr/local/confixx/pipelog.pl
```


----------

