您的位置:首页 > 编程语言 > Java开发

关于storm程序运行起来“java.lang.OutOfMemoryError: unable to create new thread解决方案

2016-08-03 17:05 513 查看
问题:storm程序运行起来,发现提示不能创建更多的线程!自己查看服务器的内存(free -g)和cpu

利用率(top)及磁盘剩余空间(df -h),发现还有许多可用资源,于是怀疑(多半是)系统默认创建进程数(1024个)(ulimit -a)限定所致!
1、系统RedHat

2、修改/etc/security/limits.conf文件



3、接着修改/etc/security/limits.d/90-nproc.conf文件



Scmcc:为我自己的用户,根据实际情况自己修改
soft:提示警告信息
nproc:最大用户进程数
hard:报错信息

4、接着修改/etc/pam.d/login 文件,在最后添加



5、还没完!如果你只是做到这里那么你退出当前用户或则退出终端之后重新登录,max user processes还是跟以前设置一样!
 
RedHat系统一定要重启主机!!!!!!!!!!!!!!(其他的未测试)所以在一开始就说了用的是RedHat系统。

6、重启主机后的结果如图:



7、因此你就可以创建更多的worker、executor、task数目了,赶紧修改你的storm程序进行调优吧!

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐