- 浏览: 99640 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
sulanyan29:
您 好,请问下android程序中调用以下两个命令,开启: s ...
linux 防火墙启动、添加规则 -
rainliu:
Can use jrockit monitor for IBM ...
java堆栈溢出 JRockit+Tomcat 实战调试
java.lang.OutOfMemoryError: unable to create new native thread
今天系统突然收到错误日志:
于是,利用jprofiler7来测试一下web应用,说到这个分析工具,得详细介绍一下:
是一个全功能的 Java 剖析工具( profiler ),专用于分析 J2SE 和 J2EE 应用程序。它把 CPU 、执行绪和内存的剖析组合在一个强大的 应用中。 JProfiler 可提供许多 IDE 整合和应用服务器整合用途。 JProfiler 直觉式的 GUI 让你可以找到效能瓶颈、抓出内存漏失 (memory leaks) 、并解决执行绪的问题。它让你得以对 heap walker 作资源回收器的 root analysis ,可以轻易找出内存溢出; heap 快照( snapshot )模式让未被参照( reference )的对象、稍微被参照的对象、或在终结( finalization )队列的对象 都会被移除;整合精灵以便剖析浏览器的 Java 外挂功能。
步骤:
1、下载jprofiler7,地址:http://www.ej-technologies.com/download/jprofiler/files.html
linux 版与client windows的
2、服务器端 JProfiler 安装:
把 jprofiler_linux_7.sh 上传到到服务器,假设路径为 /opt/jprofiler
按照提示来安装,提示都很简单,不在多说。安装路径选择 /opt/jprofiler7
3、客户端连接配置
1). 运行 JProfiler 。第一次打开会有向导,忽略它。
2). 选择 Session->Integration Wizard->New Remote Integratation
3). 选择 On a remote computer;Platform of remote computer 选择 Linux x86/AMD 64;Next
4). 输入服务器 IP ;Next
5). 输入服务器上的 jprofiler 的安装路径,如 /opt/jprofiler4 ;next
6). 选择服务器的 JDK 环境,这里是:IBM,1.6.0,hotspot;next
7). 输入端口:这里是默认值 8849;next
8). 选择启动模式:这里选第一种 wait for a connection from the jprofiler GUI;next
9). 这里会列出需要在服务器端做的配置:
4、服务器端的配置
(1)修改系统环境配置文件 /etc/profile ,增加
(2)修改TOMCAT启动文件catalina.sh,添加
(3)Reboot Linux and startup Tomcat using startup.sh;
5.启动客户端软件
点击jprofiler菜单 session>start center>Open Session
Available session configurations中列出了刚才配置的连接,选中使用就OK了!!
Feb 12, 2012 1:28:40 AM org.apache.tomcat.util.net.JIoEndpoint processSocket SEVERE: Error allocating socket processor java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) at java.lang.Thread.start(Thread.java:640) at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java:703) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:652) at org.apache.catalina.core.StandardThreadExecutor.execute(StandardThreadExecutor.java:82) at org.apache.tomcat.util.net.JIoEndpoint.processSocket(JIoEndpoint.java:729) at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:313) at java.lang.Thread.run(Thread.java:662)
于是,利用jprofiler7来测试一下web应用,说到这个分析工具,得详细介绍一下:
是一个全功能的 Java 剖析工具( profiler ),专用于分析 J2SE 和 J2EE 应用程序。它把 CPU 、执行绪和内存的剖析组合在一个强大的 应用中。 JProfiler 可提供许多 IDE 整合和应用服务器整合用途。 JProfiler 直觉式的 GUI 让你可以找到效能瓶颈、抓出内存漏失 (memory leaks) 、并解决执行绪的问题。它让你得以对 heap walker 作资源回收器的 root analysis ,可以轻易找出内存溢出; heap 快照( snapshot )模式让未被参照( reference )的对象、稍微被参照的对象、或在终结( finalization )队列的对象 都会被移除;整合精灵以便剖析浏览器的 Java 外挂功能。
步骤:
1、下载jprofiler7,地址:http://www.ej-technologies.com/download/jprofiler/files.html
linux 版与client windows的
2、服务器端 JProfiler 安装:
把 jprofiler_linux_7.sh 上传到到服务器,假设路径为 /opt/jprofiler
# cd /opt/jprofiler # chmod +x *.sh # ./jprofiler_linux_7.sh -c
按照提示来安装,提示都很简单,不在多说。安装路径选择 /opt/jprofiler7
3、客户端连接配置
1). 运行 JProfiler 。第一次打开会有向导,忽略它。
2). 选择 Session->Integration Wizard->New Remote Integratation
3). 选择 On a remote computer;Platform of remote computer 选择 Linux x86/AMD 64;Next
4). 输入服务器 IP ;Next
5). 输入服务器上的 jprofiler 的安装路径,如 /opt/jprofiler4 ;next
6). 选择服务器的 JDK 环境,这里是:IBM,1.6.0,hotspot;next
7). 输入端口:这里是默认值 8849;next
8). 选择启动模式:这里选第一种 wait for a connection from the jprofiler GUI;next
9). 这里会列出需要在服务器端做的配置:
4、服务器端的配置
(1)修改系统环境配置文件 /etc/profile ,增加
JPROFILER_HOME=/opt/jprofiler7/bin/linux-x86 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JPROFILER_HOME
(2)修改TOMCAT启动文件catalina.sh,添加
export LD_LIBRARY_PATH=/opt/jprofiler7/bin/linux-x86 JAVA_OPTS=' -Xms500m -Xmx2000m -XX:PermSize=64M -XX:MaxPermSize=128m -agentlib:jprofilerti=port=8849 -Xbootclasspath/a:/opt/jprofiler7/bin/agent.jar '
(3)Reboot Linux and startup Tomcat using startup.sh;
JProfiler> Protocol version 23 JProfiler> Using JVMTI JProfiler> 32-bit library JProfiler> Listening on port: 8849. JProfiler> Native library initialized JProfiler> Waiting for a connection from the JProfiler GUI
5.启动客户端软件
点击jprofiler菜单 session>start center>Open Session
Available session configurations中列出了刚才配置的连接,选中使用就OK了!!
发表评论
-
微信群消息自动转发另一群
2017-09-04 18:46 11700周六,咱们小区业委会的秘书长娟姐找到我,说小区业主太多,一个群 ... -
ORACLE 11 ORA-00119 ORA-00132启动异常抛错处理
2013-02-22 10:40 1529今天意外重启服务器,导致oracle异常出现。 SQL> ... -
java堆栈溢出 JRockit+Tomcat 实战调试
2012-07-24 10:19 28041. JRockit简介 Jrockit是Bea开发的符合J ... -
apache 一些与模块相关的错误
2012-02-13 22:15 1215root@srv-2 modules]# /etc/init. ... -
linux 防火墙启动、添加规则
2012-01-26 21:10 30521) 重启后生效 开启: chkconfi ... -
linux 常用命令
2011-10-17 10:19 7041、linux中使用vi 打开文件时,能显示行号 # vi t ... -
wordpress mysql错误:is marked as crashed and should be repaired
2011-09-23 11:41 958今天访问我的博客wordpress,内容读不出来 查看wp_ ... -
Lucene 分词解读(二)--Analyzer
2011-09-19 17:33 1385Lucene中的Analyzer 为了更好地搜索中文,在Lu ... -
Lucene写自己的Analyzer
2011-09-19 17:32 1489实现一个简单的分析器(Analyzer)的例子如下所示:] ... -
Lucene 分词解读(一)
2011-09-19 17:31 1021Lucene中的中文分词 Lucene中处理中文的常用方法有 ... -
三叉Trie树
2011-09-19 17:30 1268在一个三叉搜索树(Tern ... -
三叉Trie树
2011-09-13 16:20 6在一个三叉搜索树(Tern ... -
Lucene写自己的Analyzer
2011-09-13 15:57 44实现一个简单的分析器(Analyzer)的例子如下所示:] ... -
Lucene 分词解读(二)--Analyzer
2011-09-13 15:51 9Lucene中的Analyzer 为了更好地搜索中文,在Lu ... -
Lucene 分词解读(一)
2011-09-13 15:46 1014Lucene中的中文分词 Lucene中处理中文的常用方法有 ... -
大并发搜索下关键词前缀匹配值得考虑的一种数据结构---Trie
2011-09-12 23:43 2355如果要实现一个能支撑 ... -
大并发搜索下值得考虑的一种数据结构---Trie
2011-09-12 23:42 0如果要实现一个能支撑大数据量并发搜索的引擎,一般不会采用luc ... -
Linux下查看文件和文件夹大小命令
2011-09-11 21:59 1790在服务器上部署了多 ... -
cannot make any changes to the index (it was opened with readOnly = true)
2011-09-10 13:13 1445在调用IndexReader.open(final Di ... -
nginx 301 重定向 包括域名、目录、文件等方法 (二)
2011-09-09 14:24 10630nginx rewrite 伪静态配置参数详细说明 正则表达 ...
相关推荐
【Java虚拟机内存溢出分析】:当遇到`java.lang.OutOfMemoryError: unable to create new native thread`错误时,这通常表示系统无法为新的Java线程分配足够的内存,即操作系统层面的资源耗尽,而非Java堆内存不足。...
3. **无法创建新的本地线程 (Unable to create new native thread)**: - 每个Java应用在操作系统上都表现为一个或多个线程。当JVM尝试创建新线程但操作系统报告无可用资源时,会抛出此错误。 - 这可能是由于系统...
5. 无法创建新的原生线程(Unable to create new native thread) 当JVM尝试创建新的线程时,如果无法获取足够的原生内存来分配新线程的栈空间,就会抛出该错误。通常发生在系统限制了线程数量或是原生内存不足时。 ...
- **错误日志**:`java.lang.OutOfMemoryError: unable to create new native thread` 和 `java.lang.OutOfMemoryError: request bytes for ... Out of swap space?` - **原因**:可能由于Java堆设置过大导致...
【情况五】:`java.lang.OutOfMemoryError: unable to create new native thread` 这表明系统无法创建新的原生线程,可能是由于线程栈空间不足或者系统资源限制。解决方法包括减少单个线程栈大小(使用`-Xss`参数)...
在使用Dubbo进行分布式服务调用的过程中,可能会遇到“无法创建新线程”的异常情况,具体表现为`java.lang.OutOfMemoryError: unable to create new native thread`。此类异常通常出现在系统资源紧张的情况下,特别...
- **java.lang.OutOfMemoryError: unable to create new native thread**:无法为线程分配内存。 - **java.lang.OutOfMemoryError: request bytes for**:地址空间不足。 解决内存溢出问题,首先需要查看监控工具...
系统会提示出错,前台错误为:HTTP Status 500-Dispatch[EAITool] to method listCurTree retrun an exception,后台错误为:java.lang.OutOfMemoryError: unable to create new native thread。 解决方法: 为了...
首先,我们遇到的第一个问题是“意外的异常”和“java.lang.OutOfMemoryError: unable to create new native thread”。这通常发生在尝试上传大型应用war包至WebLogic管理服务器时。由于应用较大,系统内存不足,...
java.lang.OutOfMemoryError: unable to create new native thread ``` 或是在启动服务时收到: ``` /etc/profile: fork: retry: Resource temporarily unavailable ``` 这些错误通常表明系统中的线程资源已经...
OutOfMemoryError的8种经典案例,Java heap space、GC overhead limit exceeded、Permgen space、Metaspace、Unable to create new native thread、Out of swap space?、Requested array size exceeds VM limit、...
当应用程序尝试创建超过这个限制的线程时,可能会抛出`java.lang.OutOfMemoryError: unable to create new native thread`异常。这个限制是防止恶意或意外的进程消耗过多系统资源,导致所谓的“fork炸弹”。 实战...
- **无法创建新原生线程**(`java.lang.OutOfMemoryError: unable to create new native thread`):当操作系统没有足够的资源来创建新线程时发生,可以通过调整`-Xss`参数来减少分配给单个线程的栈空间大小。...
若遇到`java.lang.OutOfMemoryError: unable to create new native thread`错误,则需检查并调整此参数。 - **Windows下的优化**:对于Windows操作系统,建议选择服务器版本,因为它们提供了更好的资源管理能力和...
Java 中 Executor, ExecutorService 和 Executors ...通过理解它们之间的区别,我们可以更好地使用线程池来提高应用的响应时间,避免“java.lang.OutOfMemoryError: unable to create new native thread”之类的错误。
5. Unable to Create New Native Thread 错误 * 原因分析:JVM 向 OS 请求创建 native 线程失败 * 解决方案:增加 JVM 的堆内存空间、调整 JVM 的线程池大小、优化线程的使用 6. Requested Array Size Exceeds VM ...