HBASE遇到的java.lang.OutOfMemoryError: unable to create new native thread解决方法
2016-04-15 15:39
821 查看
简单分享一下,类似问题的解决方法刚才在某机器上上xxx用户下压测时遇到这个问题,连xxx都进不去了说明xxx用户下无法创建跟多的线程了(当然root用户没这个问题) 系统能够创建的最大线程数:(MaxProcessMemory - JVMMemory – 系统内存) / (ThreadStackSize) = Number of threads有两种方式: 减少xxx下的ThreadStackSize 增加xxx下的nproc数量修改[lsmpusr@wxlab28bin]$ ulimit -acore filesize (blocks, -c) 0data segsize (kbytes, -d)unlimitedschedulingpriority (-e) 0filesize (blocks, -f) unlimitedpendingsignals (-i) 256636max lockedmemory (kbytes, -l) 64max memorysize (kbytes, -m) unlimitedopenfiles (-n) 65536pipesize (512bytes, -p) 8POSIX messagequeues (bytes, -q) 819200real-timepriority (-r) 0stacksize (kbytes, -s) 10240-----可以减小这个,建议在jvm –xss中减少cputime (seconds, -t) unlimitedmax userprocesses (-u) 1024-----可以增加这个到32000virtualmemory (kbytes, -v)unlimitedfilelocks (-x) unlimited修改/etc/security/limits.conf* soft nofile 65536
* hard nofile 65536
xxx soft nproc 32000
xxx hard nproc 32000
xxx soft stack 1024
xxx hard stack 1024
其中 xxx表示启动hbase的用户,如使用hadoop启动hbase,则配置如下:
* - nproc 102400
* - nofile 102400
hadoop hard nproc 32000
hadoop soft nproc 32000
hadoop hard stack 1024
hadoop soft stack 1024
* hard nofile 65536
xxx soft nproc 32000
xxx hard nproc 32000
xxx soft stack 1024
xxx hard stack 1024
其中 xxx表示启动hbase的用户,如使用hadoop启动hbase,则配置如下:
* - nproc 102400
* - nofile 102400
hadoop hard nproc 32000
hadoop soft nproc 32000
hadoop hard stack 1024
hadoop soft stack 1024
相关文章推荐
- Facebook's New Real-time Messaging System: HBase to Store 135+ Billion Messages a Month
- Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
- 基于HBase Thrift接口的一些使用问题及相关注意事项的详解
- 如何解决struts2日期类型转换
- 基于Java实现杨辉三角 LeetCode Pascal's Triangle
- hbase shell基础和常用命令详解
- 手把手教你配置Hbase完全分布式环境
- 实战:在Java Web 项目中使用HBase
- HBase RowKey设计的那些事
- Spark中将对象序列化存储到hdfs
- HBase基本原理
- HBase中的基本概念
- 【原创】基于分布式存储的开源系统在实时数据库海量历史数据存储项目上的预研
- HBase0.96.x开发使用(一)--安装
- 基于外部ZooKeeper的GlusterFS作为分布式文件系统的完全分布式HBase集群安装指南
- 基于solr实现hbase的二级索引
- HBase伪分布式安装
- HBase 快速入门之 --数据模型(逻辑结构)