博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows server 2008 jstack -存储空间不足,无法处理此命令
阅读量:7071 次
发布时间:2019-06-28

本文共 950 字,大约阅读时间需要 3 分钟。

  hot3.png

最近一项目出现问题,用户访问时系统一直处于白屏状态无法响应。此问题之前也出现过,是由于之前同事开发的长连接耗尽系统所有线程导致,但当时发现问题已经修改,如今又再次出现此问题,只能导出线程日志进行分析,但分析过程中发现直接通过命令行方式执行JDK提供工具会给出错误提示,“存储空间不足,无法处理此命令”。

服务器环境:windows server 2008

根据该错误提示进行查询,发现网上很多软件都曾经遇到该提示,但很多给出的解决方案都是添加虚拟内存进行解决,但此种方案明显不适用于我这种问题。

在我本地开发环境通过jstack或者jps等工具执行的时候完全没有任何问题,而且之前在linux环境下通过这些工具执行也没什么问题,为什么服务器就不行了呢?

在网上发现了这么一段话

Jstack only allows you to connect to JVM's running in the same user context.  Many people use a service wrapper to start their products: this puts the JVM in the Local System Account user context.  Since this special account has no login shell, you won't be able to force a thread dump normally.

后来仔细一想项目确实是通过服务方式进行注册,而且之前进行问题定位的时候也是直接使用的jvisualvm 进行查看就不存在账户问题。

152448_5vyY_269725.png

这种情况下通过CMD直接运行JPS命令,也只能等到当前jps的进程ID

152616_s7W4_269725.png

这种情况只能继续想办法处理下去,在处理过程中发现国外网友也出现此问题,建议通过psexec进行处理,通过psexec使用system 用户进行程序执行。

153720_dMDg_269725.png

153720_NrhZ_269725.png

网上下载该程序后使用命令后,发现JPS命令能够执行了,但是还是无法执行jstack

153339_B1Vc_269725.png

无奈只能接着尝试,在查看了psexec 的命令后,我想要不试试直接在当前窗口执行

154343_94ZV_269725.png

最后终于成功!

转载于:https://my.oschina.net/luckyi/blog/535959

你可能感兴趣的文章
mount loop最大数的调整
查看>>
Android的消息机制(1)
查看>>
树的创建与遍历
查看>>
进度条控件基本使用
查看>>
DataGrid PCV排序学习
查看>>
centos7安装jdk1.8
查看>>
Vue中v-for的数据分组
查看>>
实现选项卡的原理
查看>>
ajax 无刷新下拉加载更多。
查看>>
杭电 1287 破译密码
查看>>
mongodb集合的增删
查看>>
LeetCode 161: One Edit Distance
查看>>
SPOJ220 Relevant Phrases of Annihilation
查看>>
python基础学习10----集合
查看>>
ETL工具—Kettle数据的导入导出—批量Excel表到数据库
查看>>
知识思考
查看>>
OpenCV安装
查看>>
在一行上打印(完成度打印)
查看>>
linux运维人员常用的150个命令
查看>>
boost库 线程使用
查看>>