Dubbo服务治理篇——线程模型(Linux 用户线程数限制导致的 java.lang.OutOfMemoryError)-阿里云开发者社区

开发者社区> -技术小助手-> 正文

Dubbo服务治理篇——线程模型(Linux 用户线程数限制导致的 java.lang.OutOfMemoryError)

简介: 本文解决的是Dubbo的线程模型中Linux 用户线程数限制导致的 java.lang.OutOfMemoryError: unable to create new native thread 异常。 类似于数据库的连接池 Linux 用户线程数限制导致的 Java.lang.OutOfMemoryError: unable to create new native thread异常 系统默认最大的线程数为1024个
+关注继续查看

本文解决的是Dubbo的线程模型中Linux 用户线程数限制导致的 java.lang.OutOfMemoryError: unable to create new native thread 异常。

类似于数据库的连接池

Linux 用户线程数限制导致的 Java.lang.OutOfMemoryError: unable to create new native thread异常

系统默认最大的线程数为1024个


[root@liuyazhuang131 ~]# 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     1024
root       soft    nproc     unlimited
[root@liuyazhuang131 ~]# vi /etc/security/limits.d/90-nproc.conf 


调整时要注意:

1、 尽量不要使用 root 用户来部署应用程序,避免资源耗尽后无法登录操作系统。因为root用户默认没有限制线程数,如果线程过多,会使资源占用很多,导致不能关机,只能硬关机

2、 普通用户的线程数限制值要看可用物理内存容量来配置 



[root@liuyazhuang131 ~]# cat /proc/meminfo |grep MemTotal 
MemTotal:        2941144 kB
[root@liuyazhuang131 ~]# echo "2941144/128"|bc
22977
[root@liuyazhuang131 ~]# ulimit -u
1024
[1]+  Stopped                 vi /etc/security/limits.d/90-nproc.conf
[root@liuyazhuang131 ~]# vi /etc/security/limits.d/90-nproc.conf 
[root@liuyazhuang131 ~]# 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     12000
root       soft    nproc     unlimited
[root@liuyazhuang131 ~]# 
 计算方式:
default_nproc = total_memory/128K; 
$ cat /proc/meminfo |grep MemTotal
$ echo "2941144/128"|bc
$ ulimit -u
ulimit -a # 显示目前资源限制的设定 
ulimit -u # 用户最多可开启的程序数目
重启,使之生效:# reboot

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器小白新手教程(从选配到网站上线全过程)
阿里云服务器新手教程从云服务器选配购买、云服务器配置到网站上线全过程,阿里云服务器如何购买?购买后如何使用?云集市场抽时间写了一篇详细的阿里云服务器新手教程,从云服务器选配到网站上线全过程:
2965 0
【直播活动】搞事情!听说阿里云要现场直播拆服务器?
阿里云弹性裸金属服务器“开箱评测”,首次公开详解神龙架构(X-Dragon)
2733 0
并发服务器三种实现方式之进程、线程和select
这篇主要介绍如何实现并发服务器,主要通过三种方式:进程、线程和select函数来分别实现。
1418 0
Java中的访问控制权限
简介 Java中为什么要设计访问权限控制机制呢?主要作用有两点: (1)为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分。 (2)为了让类库设计者可用更改类的内部工作方式,而不必担心会对用户造成重大影响。
665 0
源码分析Dubbo服务消费端启动流程
通过前面文章详解,我们知道Dubbo服务消费者标签dubbo:reference最终会在Spring容器中创建一个对应的ReferenceBean实例,而ReferenceBean实现了Spring生命周期接口:InitializingBean,接下来应该看一下其afterPropertiesSet方法的实现。
1466 0
云计算热度不减,云计算解决方案服务商BoCloud 博云半年后再次发布融资消息
云计算热度不减,云计算解决方案服务商BoCloud 博云半年后再次发布融资消息
14 0
1633
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载