当前位置: 首页 > 知识库问答 >
问题:

wowza java高cpu使用率

秦博达
2023-03-14

我对wowza中的cpu使用有问题。

这是可疑的线程。这个线程被占用了高CPU

SocketAcceptorIoProcessor-1.0 prio=10 tid=0x0000002a9fb53000 nid=0x2428 runnable         [0x000000004f017000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:210)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:65)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
- locked <0x00000007d82ba4e8> (a sun.nio.ch.Util$2)
- locked <0x00000007d82ba4d8> (a java.util.Collections$UnmodifiableSet)
- locked <0x00000007d82ad450> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
at org.apache.mina.transport.socket.nio.SocketIoProcessor$Worker.run(Unknown Source)
at org.apache.mina.util.NamePreservingRunnable.run(Unknown Source)
at java.lang.Thread.run(Thread.java:662)

这个线程占用了大量cpu。这是jdk bug还是其他?

这是我的环境。

CentOS 5.4版(最终版)

WowzaMediaServer-3.1.2

java版本1.6.0_23 java(TM)SE Runtime Environment(构建1.6.0_23-b05)java HotSpot(TM)64位服务器VM(构建19.0-b09,混合模式)

共有2个答案

赵雪峰
2023-03-14

我遇到了同样的问题,我通过停止ntp服务并手动设置DATE并重新启动ntp服务来修复它:

        /etc/init.d/ntp stop
        date -s "$(date)"
        /etc/init.d/ntp start
况喜
2023-03-14

我会首先检查它是否真的在消耗CPU。如果您正在分析应用程序,它可能看起来在这个方法上花费了很多时间,而实际上这个方法是阻塞的。大多数分析器都很难区分在本机代码中花费大量时间的方法(消耗大量CPU)和阻塞方法(消耗很少CPU)

旧版本的Java有可能导致选择器旋转的错误。也就是说,即使它在其他情况下仍然正常工作,它也不会在繁忙的循环中阻塞而一直不返回选择器。我相信新版Java已经解决了这个问题。我会试试Java 6 update 35或Java 7 update 7,看看是否能解决你的问题。

如果连接少于几百个,我更喜欢使用阻止NIO,因为它要简单得多恕我直言。

 类似资料:
  • 问题内容: 关闭。 这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 7年前关闭。 最近,我的服务器CPU性能一直很高。 CPU平均负载为13.91(1分钟)11.72(5分钟)8.01(15分钟),而我的站点的流量仅略有增加。 运行完最高命令后,我看到MySQL使用的CPU是160%! 最近,我一直在优化表,并切换到持久连接。这会

  • 我正在使用mod安全规则https://github.com/SpiderLabs/owasp-modsecurity-crs清理用户输入数据。在将用户输入与mod security rule正则表达式匹配时,我面临着cpu激增和延迟。总的来说,它包含500个正则表达式来检查不同类型的攻击(xss、badrobots、generic和sql)。对于每个请求,我检查所有参数并对照所有这500个正则表

  • 我有: a)1台服务器(4vcpu,8GB)运行hazelcast节点, b)1台(4vcpu,8MB)运行tomcat 7上的hazelcash性能中心。 两台服务器都在同一个本地网络中。 我已经测试了2个场景:< br >场景1)我已经开始了a)和b)。没有传输数据。a)上的cpu使用率为0-10%。< br >情景2)我已经开始了a)和b)。我已经将大量数据转移到a)上进行处理,并一直等到它

  • 我们正在使用带有 5 个代理的 Apache Kafka 2.2 版本。我们每天收到 50 数百万个事件,但我们达到了高 kafka CPU 使用率。我们使用默认的生产者/消费者/代理设置。 我对表演有一些疑问; 我们有不同的kafka流应用程序,它们进行聚合或连接操作以携带丰富的消息。我们所有的kafka-流应用程序都包含以下设置: < li >恰好一次:true < li >最小同步副本:3

  • 什么是 CPU 使用率 CPU 使用率是单位时间内 CPU 使用情况的统计,以百分比的方式展示,我们通常所说的 CPU 使用率,就是除了空闲时间外的其他时间占总 CPU 时间的百分比 怎么查看 CPU 使用率 top 和 ps 是最常用的性能分析工具:top 显示了系统总体的 CPU 和内存使用情况,以及各个进程的资源使用情况。ps 则只显示了每个进程的资源使用情况。 top 默认每 3 秒刷新一

  • 我有一个基于java的应用程序要在ubuntu上运行,为了从服务器开始并保持它的活力,我编写了一个upstart脚本。 问题是启动了upstart服务,它消耗了100%的cpu,这个应用程序有很多线程,只有一个线程很高。 请注意,从命令行启动java应用程序不会出现此问题。 非常感谢。