在启动云测试 服务器的时候,检验 java 版本的时候忽然遇到了一个 Cannot allocate memory 错误
[root@elcid-prod1 ~]# java -version
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00007ff55c5ea000, 4096, 0) failed; error='Cannot allocate memory' (errno=12)
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 4096 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /root/hs_err_pid5138.log
查找了一下相关文档,发现这个错误的含义其实就是像它自己说的,没法分配内存了。
The problem is inherent with the way Java allocates memory when executing processes. When Java executes a process, it must fork() then exec(). Forking creates a child process by duplicating the current process. By duplicating the current process, the new child process will request approximately the same amou