Dubbo线程模型(结合Linux线程数限制配置的实战经验分享)
配置标签:
<dubbo:provider/>
<dubbo:protocol/>
实战经验分享(属用性能调优):
Linux用户线程数限制导致的java.lang.OutOfMemoryError: unable to create new native thread 异常
# vi /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.
root soft nproc unlimited
* soft nproc 20480
调整时要注意:
1、 尽量不要使用root用户来部署应用程序,避免资源耗尽后无法登录操作系统。
2、 普通用户的线程数限制值要看可用物理内存容量来配置
计算方式:
default_nproc = total_memory/128K;
$ cat /proc/meminfo |grep MemTotal
$ echo "5993104 / 128"| bc
$ ulimit -u
ulimit -a # 显示目前资源限制的设定
ulimit -u # 用户最多可开启的程序数目
重启,使之生效:# reboot
参考:https://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53
最后更新:2017-09-22 18:32:43