开发者社区> 问答> 正文

java CPU 100%


linux服务器上java几乎占满cpu,我用top -Hp <pid>的方式把该进程的所有线程都显示出来,然后发现几个占用CPU资源特别大的线程tid,把tid转换为hex格式后是57a9,在jstack命令中过滤内容出来(jstack <pid>  | grep -A 100 57a9),显示的是如图所示,该怎么解决?

展开
收起
2016-12-02 15:47:35 4843 0
2 条回答
写回答
取消 提交回答
  • Rejava CPU 100%
    你是不是调整过jvm的启动参数?如果你的服务器内存比较大,而且程序不是很吃内存的哈,可以把gcc的值改大点,频繁gcc会增加cpu 的负荷

    -------------------------

    Rejava CPU 100%
    如果你使用了多线程,可以减少线程的数量,提高线程的利用率,尽量避免阻塞线程进行等待

    -------------------------

    Rejava CPU 100%
    这完全有可能
    2016-12-02 16:05:52
    赞同 展开评论 打赏
  • 有人知道怎么解决麽?

    -------------------------

    回 2楼(enapsoft) 的帖子
    没有调整过jvm启动参数,有没有可能是因为服务器上发布项目太多,造成java几乎占满cpu?
    2016-12-02 15:59:12
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
如何通过 Serverless 提高 Java 微服务治理效 立即下载
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载