ÒýÓÃ:Caused by: java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:640)
³õ¿´¿ÉÄÜ»áÈÏΪÊÇϵͳµÄÄÚ´æ²»×㣬Èç¹ûÕâÑùÏëµÄ»°¾Í±»Õâ¶ÎÌáʾ´øµ½¹µÀïÃæÈ¥ÁË¡£
ÉÏÃæÕâ¶Î´íÎóÌáʾµÄ±¾ÖÊÊÇLinux²Ù×÷ϵͳÎÞ·¨´´½¨¸ü¶à½ø³Ì£¬µ¼Ö³ö´í¡£Òò´ËÒª½â¾öÕâ¸öÎÊÌâÐèÒªÐÞ¸ÄLinuxÔÊÐí´´½¨¸ü¶àµÄ½ø³Ì¡£
ÐÞ¸ÄLinux×î´ó½ø³ÌÊý
ÎÒÃÇ¿ÉÒÔͨ¹ýulimit -aÀ´²é¿´µ±Ç°LinuxϵͳµÄһЩϵͳ²ÎÊý¡£
ÒýÓÃ:$ 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) 62357
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536
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) 4096
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
ÔÚÉÏÃæÕâЩ²ÎÊýÖУ¬Í¨³£ÎÒÃǹØ×¢µÃ±È½Ï¶àµÄÊÇÒ»¸ö½ø³Ì¿É´ò¿ªµÄ×î´óÎļþÊý£¬¼´open files¡£ÏµÍ³ÔÊÐí´´½¨µÄ×î´ó½ø³ÌÊýÁ¿¼´ÊÇmax user processes Õâ¸ö²ÎÊý¡£ ÎÒÃÇ¿ÉÒÔʹÓà ulimit -u 4096 ÐÞ¸Ämax user processesµÄÖµ£¬µ«ÊÇÖ»ÄÜÔÚµ±Ç°Öն˵ÄÕâ¸ösessionÀïÃæÉúЧ£¬ÖØÐµÇ¼ºóÈÔÈ»ÊÇʹÓÃϵͳĬÈÏÖµ¡£
ÕýÈ·µÄÐ޸ķ½Ê½ÊÇÐÞ¸Ä/etc/security/limits.d/90-nproc.confÎļþÖеÄÖµ¡£ÏÈ¿´Ò»ÏÂÕâ¸öÎļþ°üº¬Ê²Ã´£º
ÒýÓÃ:$ cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 4096
ÎÒÃÇÖ»ÒªÐÞ¸ÄÉÏÃæÎļþÖеÄ4096Õâ¸öÖµ£¬¼´¿É¡£
À´Ô´£ºLinuxÉçÇø

