我的问题对我来说很复杂。我正在为游戏运行服务器,但在正确设置内存的 java 设置时遇到了一些问题。
我正在运行具有 32 GB 内存的 Ubuntu 12.10 64 位。
java 任务最多应该占用 20 GB 的实际内存。它没有这样做,而是一直使用虚拟内存。
top - 19:51:44 up 15 min, 1 user, load average: 0.29, 0.30, 0.19
Tasks: 120 total, 2 running, 118 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.9%us, 0.3%sy, 0.0%ni, 98.5%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 32809368k total, 2237888k used, 30571480k free, 28092k buffers
Swap: 16776116k total, 0k used, 16776116k free, 411660k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1876 test 20 0 46.1g 1.2g 15m S 8 3.7 1:37.17 java
目前我正在使用以下命令运行它: MAVEN_OPTS="-Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 -Xmx20480M" screen -S Test -d -m mvn -o tomcat7:run
我还尝试将其添加到 pom.xml(构建选择):
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<argLine>-Xmx20480m</argLine>
<mainClass>org.server.Server</mainClass>
<arguments>
</arguments>
</configuration>
</plugin>
如果有人知道解决方案,那就太好了。
非常感谢。
编辑:/proc/{pid}/ls -l 我不能直接回答你的评论,但我不明白这个 mmap 到底在哪里。这就是我切换到你写的文件夹时得到的:
root@testserver /proc/1876 # ls -l
total 0
dr-xr-xr-x 2 root root 0 Nov 10 20:15 attr
-rw-r--r-- 1 root root 0 Nov 10 20:15 autogroup
-r-------- 1 root root 0 Nov 10 20:15 auxv
-r--r--r-- 1 root root 0 Nov 10 20:15 cgroup
--w------- 1 root root 0 Nov 10 20:15 clear_refs
-r--r--r-- 1 root root 0 Nov 10 20:15 cmdline
-rw-r--r-- 1 root root 0 Nov 10 20:15 comm
-rw-r--r-- 1 root root 0 Nov 10 19:37 coredump_filter
-r--r--r-- 1 root root 0 Nov 10 20:15 cpuset
lrwxrwxrwx 1 root root 0 Nov 10 19:39 cwd -> /srv/main
-r-------- 1 root root 0 Nov 10 20:15 environ
lrwxrwxrwx 1 root root 0 Nov 10 19:37 exe -> /usr/lib/jvm/java-7-oracle/bin/java
dr-x------ 2 root root 0 Nov 10 19:39 fd
dr-x------ 2 root root 0 Nov 10 20:15 fdinfo
-r-------- 1 root root 0 Nov 10 20:15 io
-r--r--r-- 1 root root 0 Nov 10 20:15 latency
-r--r--r-- 1 root root 0 Nov 10 20:15 limits
-rw-r--r-- 1 root root 0 Nov 10 20:15 loginuid
dr-x------ 2 root root 0 Nov 10 20:15 map_files
-r--r--r-- 1 root root 0 Nov 10 19:37 maps
-rw------- 1 root root 0 Nov 10 20:15 mem
-r--r--r-- 1 root root 0 Nov 10 20:15 mountinfo
-r--r--r-- 1 root root 0 Nov 10 20:15 mounts
-r-------- 1 root root 0 Nov 10 20:15 mountstats
dr-xr-xr-x 5 root root 0 Nov 10 19:37 net
dr-x--x--x 2 root root 0 Nov 10 20:15 ns
-r--r--r-- 1 root root 0 Nov 10 20:15 numa_maps
-rw-r--r-- 1 root root 0 Nov 10 20:15 oom_adj
-r--r--r-- 1 root root 0 Nov 10 20:15 oom_score
-rw-r--r-- 1 root root 0 Nov 10 20:15 oom_score_adj
-r--r--r-- 1 root root 0 Nov 10 20:15 pagemap
-r--r--r-- 1 root root 0 Nov 10 20:15 personality
lrwxrwxrwx 1 root root 0 Nov 10 19:39 root -> /
-rw-r--r-- 1 root root 0 Nov 10 20:15 sched
-r--r--r-- 1 root root 0 Nov 10 20:15 schedstat
-r--r--r-- 1 root root 0 Nov 10 20:15 sessionid
-r--r--r-- 1 root root 0 Nov 10 20:15 smaps
-r--r--r-- 1 root root 0 Nov 10 20:15 stack
-r--r--r-- 1 root root 0 Nov 10 19:37 stat
-r--r--r-- 1 root root 0 Nov 10 19:37 statm
-r--r--r-- 1 root root 0 Nov 10 20:15 status
-r--r--r-- 1 root root 0 Nov 10 20:15 syscall
dr-xr-xr-x 627 root root 0 Nov 10 20:15 task
-r--r--r-- 1 root root 0 Nov 10 20:15 wchan
编辑 2:地图文件:https ://drive.google.com/file/d/0BxN3fm0mPOMUMVF1X0VEc2NSWVU/edit?usp=sharing