标签: cpu-usage

WebSphere 6.1中的CPU使用率峰值

首先,只是一些背景知识:

我们的一位客户正在经历运行我们的一个Web应用程序的WebSphere实例的CPU使用率峰值(其他应用程序的其他实例都很好).他们有一个测试环境和一个现场环境(两个iSeries)都遇到了问题 - 每个实例设置一个应用程序.我们已经在我们自己的测试环境中本地部署了此应用程序,也为iSeries上的许多其他客户部署了此应用程序,没有类似的问

实际发生了什么:

每隔一秒左右,用于WebSphere Process'的CPU使用率的CPU使用率从跳转到任何地方7%- 20%即使没有当时正在处理的请求.客户报告看到峰值高达30%.这些尖峰平均出是1.5%CPU的整体-其他WebSphere情况下通常使用0%- 0.1%在空闲时.

到目前为止我的调查

所以,我看了一下线程.测试环境中的一个线程是~350每秒使用CPU周期.它们的实时环境中的一个类似线程是~1500每秒使用CPU周期(表明它有更大的CPU).这些线程的调用堆栈看起来像

Type  Program                  Statement         Procedure                    
      QLESPI     QSYS          17                LE_Create_Thread2__FP12crtt >
      QJVALIBJVM QSYS          7                 startThread__FPv             
 J    com/ibm/ws/util/Threa >                    run                          
 J    com/ibm/ws/util/Threa >                    run                          
 J    com/ibm/ws/util/Threa >                    getTask                      
 J    com/ibm/ws/util/Bound >                    poll
Run Code Online (Sandbox Code Playgroud)

底线的整个班级名称是com/ibm/ws/util/BoundedBuffer.我让客户为我做了一个JVM转储 - 我从中得到的唯一补充信息是线程名称:

Thread:  00002F82 Deferrable Alarm : 11
Run Code Online (Sandbox Code Playgroud)

现在我的问题:

  • 鉴于这些症状,你们中任何人都可以找出问题吗?(也许这是一个很长的镜头!)
  • 什么是Deferrable Alarm?从JVM转储中,我可以看到4个具有此名称的线程.其他三个似乎做得很好.通过调试我的本地WebSphere(在Windows上)并在BoundedBuffer类中添加断点,我看到BoudedBuffers正在轮询并定期调用一些侦听器.
  • 我无法访问客户机器的WebSphere控制台,并且他们没有进行任何配置更改.我可以让他们为我检查一下控制台 - 我应该让他们看看什么?
  • 我有telnet访问客户端盒,还有什么我可以调查吗?查看WebSphere配置文件等?我应该看哪些文件?
  • 因为调用堆栈和JVM转储没有明确引用我们的代码,所以可以安全地假设这是一个配置问题吗? …

java websphere multithreading cpu-usage ibm-midrange

5
推荐指数
1
解决办法
7447
查看次数

为什么.NET使用这么多CPU,这是一个问题吗?

(这本来是一个普遍的假设性问题,我抱怨说.NET是一只猪并且乞求理由.这并不是关于我的特定应用程序的问题.)

目前我正在用C#重写一些旧的C++代码.我们正在移植所有遗留应用程序.我有C++应用程序,占用MAX 3%CPU.他们大多没有使用.然后我接受代码,复制和粘贴,然后重新格式化为C#语法和.NET库,以及BAM!50%的CPU.这是什么原因?我一开始认为它是JIT,但即使在每个代码路径都进行了练习之后,整个事情也被JIT编辑,同样的问题.

我也注意到了大量的内存增加.花费9 MB运行满载的应用程序现在从10 MB开始,运行速度为50 MB.我意识到硬件很便宜,但我想了解导致这种情况的原因.它是引起恐慌的原因,还是.NET就像猪一样?

更新1对Skeet的回答

我熟悉C#.我将事情改为Linq,依此类推.我通常采用代码并减少行数,依此类推.你能举一些C++人在.NET中做错的例子吗?

更新2

这是一个普遍的问题,但具有该问题的具体应用程序如下.

它有一个线程使用和ODBC驱动程序从一个paradox数据库中获取数据.然后它使用Linq将其转换为SQL db并发布它.我通过ANTS分析器运行它,似乎数据集填充花费的时间最多.其次是Linq发帖.我知道我的一些领域是反射用法,但我不知道怎么做我需要的东西.我计划将我的字符串更改为字符串构建器.这两者有什么区别吗?

(int)datarow["Index"]
Run Code Online (Sandbox Code Playgroud)

ConvertTo.Int32(datarow["Index"])
Run Code Online (Sandbox Code Playgroud)

我更改了所有字符串连接以格式化字符串.这并没有减少头脑.有没有人知道数据读取器与数据适配器和数据集之间的区别?

.net performance memory-management cpu-usage

5
推荐指数
2
解决办法
1442
查看次数

如何在c#中优化或限制zip使用(DotNetZip)的CPU使用率?

美好的一天

我有一个应用程序,我用它来存档使用DotNetZip库的文件夹.我注意到,当它进入实际的"压缩"过程时,它占用了100%的CPU.这个应用程序将与另一个(一个TCP聊天应用程序)一起使用,所以我真的需要这个使用尽可能少的CPU.

有什么办法可以安全地限制cpu吗?我试过降低优先级,但没有什么区别.我现在唯一能做的就是将亲和力设置为1核心,使其使用50%.但当然这只适用于多核计算机.

c# cpu-usage dotnetzip

5
推荐指数
2
解决办法
6635
查看次数

Ocaml:获取进程的CPU使用率

我想做的事

我有一个计算密集的OCaml应用程序,我希望它在后台运行而不会干扰正常的计算机使用.我想向用户提供两个选项:

(1)应用程序仅在CPU使用率几乎为0%时运行;

(2)应用程序仅使用"免费"处理能力(例如,如果其他进程加起来为100%,则OCaml应用程序暂停;如果其他进程几乎为0%,则对OCaml应用程序没有限制;如果其他进程添加比如说,50%然后OCaml将使用高达50%).

一些想法

我的想法是检查代码中各个检查点的CPU使用情况,并在必要时暂停执行.

在(1)中,我们只检查CPU是否低于2%,如果不是,则暂停直到它再次低于2%.

在(2)中,事情比较棘手.由于当没有限制时,应用程序总是消耗100%的CPU,检查点将非常频繁,将CPU使用率降低到一半,我只需要在每个检查点将其延迟到检查点之间的时间.如果检查点频繁,这就类似于使用50%的CPU,我会说.对于其他百分比,我们可以通过暂停适当的时间段来做类似的事情.然而,这看起来非常人为,充满了开销,最重要的是,我不确定它是否真的能满足我的需求.更好的替代方法是Unix.nice n在应用程序开始时使用一些适当的整数调用.我想这个设置n=15可能是正确的.

我的问题

(Q1)如何从我的OCaml应用程序中了解应用程序进程的CPU使用情况?(我想用OCaml函数执行此操作,而不是通过在命令行上调用"ps"或类似的东西...)

(Q2)你认为我的想法存在问题(2).改变流程的优点有哪些实际差异?

(Q3)您对(2)有任何其他建议吗?

ocaml cpu-usage background-process

5
推荐指数
0
解决办法
629
查看次数

MySQL:慢日志; 附加CPU使用率

我启用了MySQL慢速日志功能:http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html

但有时候,由于CPU负载过高,query_times很高.

如何将当前CPU负载附加到MySQL慢速日志中的每个条目(它写入文件)?

mysql logging cpu-usage

5
推荐指数
1
解决办法
1108
查看次数

.NET MVC应用程序的高CPU和内存使用率

我们看到一个.NET MVC应用程序的CPU和内存使用量非常高,似乎无法追踪它的原因.我们的组无法访问Web服务器本身,而是在遇到某些限制时(90%或CPU或内存)自动得到通知.在本地运行我们似乎无法找到问题.我们认为有些项目可能是罪魁祸首

  • 当用户采取某些操作时,该应用程序在后台运行许多线程
  • 我们正在使用memcached(在与Web服务器不同的机器上)
  • 我们正在使用网络套接字

除此之外,就Web应用程序而言,该应用程序非常标准.这里有几个表单,登录/注销,一些管理用户和数据的管理功能; 没什么特别的.

我正在寻找两种不同的解决方案,并想知道什么是最好的.

  1. 在应用程序内部创建一个页面(仅适用于应用程序管理员),该页面显示有关正在使用的内存和CPU的信息.有这样的例子还是可能的?
  2. 使用安装在Web服务器上的某种类型的第三方概要分析服务或应用程序,并允许我们下载以查找导致应用程序中CPU和内存使用率过高的原因.

.net c# memory cpu-usage asp.net-mvc-3

5
推荐指数
1
解决办法
4163
查看次数

eclipse:"重新索引存储库工作空间"或"计算存储库工作空间的Git状态"

我正在使用eclipse Juno,昨天我注意到我的电脑变得非常热.我检查了CPU使用率,看它是100%.Eclipse是罪魁祸首,忙于"重新索引存储库工作区".半小时后它没有完成,我的机器几乎融化了,我搜索并发现了类似的问题:

重新索引存储库循环 - 而不是Maven

Eclipse挂起"重新索引(完全)存储库{username}"

事情是我没有使用git.通过我不想要的东西的声音,因为它会占用我所有的CPU.我删除了〜/ git,删除了一个使用git的项目,检查了〜/ .git下的任何文件,从eclipse插件中删除了egit和jgit,它仍然在发生.

我可以每次都停止进程,但现在似乎无法构建工作区.

所以我决定升级到开普勒,现在我遇到了一个类似的问题:

"计算存储库工作空间的Git状态"

它再次占据了我100%的CPU,并威胁要放火烧我的桌子.

我甚至没有任何开放的git项目.

我该如何阻止这个愚蠢的事情?每次我停止进程,但如果我然后尝试清理重建或打开一个项目,它会再次启动.

eclipse git cpu-usage egit jgit

5
推荐指数
1
解决办法
1万
查看次数

Elasticsearch运行线程过多

我们的ES集群存在很大问题.我们的一个节点始终使用99%的CPU.由于某些原因,elasticsearch与普通节点相比,它的进程运行的线程数大约是3倍.我htop为2个节点附加了2个屏幕截图,一个超载,另一个正常.请指教!

谢谢!

重载节点 重载节点

普通节点 正常节点

UPDATE

  1. 集群架构:

    11个节点,2个专用主站,9个数据节点.

  2. 节点硬件属性

    大师赛:

    • CPU:8x Intel(R)Xeon(R)CPU E5-1620 v2 @ 3.70GHz
    • 内存:32GB
    • 磁盘:120GB

    从站:

    1. CPU:12x Intel(R)Xeon(R)CPU E5-1650 v2 @ 3.50GHz
    2. 内存:64GB
    3. 磁盘:2.7T
  3. 集群中的文档:

    ~200万

  4. 指数conf:

    每个索引分为10个分片(5个主分片,5个副本)

  5. 查询:

    搜索RT : ~ 250/s,索引RT:~ 6K/s

  6. OS

    Ubuntu 12.04.4 LTS

  7. JAVA

java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
Run Code Online (Sandbox Code Playgroud)

java cpu cpu-usage elasticsearch

5
推荐指数
1
解决办法
2259
查看次数

如何获得hadoop纱线应用的内存和CPU使用率?

我想问一下,在运行我的hadoop mapreduce应用程序后,如何获得该应用程序的总内存和CPU使用率.我在日志和资源管理器网页上看过它,但我没有得到它.

可能吗?我可以在每个作业执行或每个应用程序中获取它,并且我是否可以按节点使用情况或总使用量获取它?

非常感谢....

memory hadoop mapreduce cpu-usage hadoop-yarn

5
推荐指数
1
解决办法
1万
查看次数

动画正在减慢网页的性能

我在html,javascript和CSS中有一个单页网站设计。网页上有很多图像,并且每个图像根据类别都有不同的动画效果。我已经将wow.js用于窗口滚动的动画效果。滚动浏览图像时,CPU和GPU的使用率很高,由于其影响,滚动会变得不稳定而不平滑。任何人都可以调查一下。我创建了一个Codepen示例。请看一看:-

(https://codepen.io/Sny220/pen/jjyEPj)
Run Code Online (Sandbox Code Playgroud)

代码如下:



<!-- HTML -->
<div class="foo foo-text foo-2 col-md-3 col-md-offset-3 over-hidden">
   <img class="wow zoominoutsingle" src="https://www.psychologies.co.uk/sites/default/files/field/image/feelgood%20chemicals.jpg" />
</div>
<div class="foo foo-text foo-2 col-md-3 over-hidden">
   <img class="wow zoominoutsingle" src="https://kajabi-storefronts-production.global.ssl.fastly.net/kajabi-storefronts-production/blogs/1049/images/BlH7rBrRFGdVF71lofox_TFmaDj07ReWp5C4zcHaw_alex-fergus-look-and-feel-amazing-health-wellness-fat-loss-natural-banner.jpg" />
</div>
<div class="foo foo-text foo-2 col-md-6 col-md-offset-3">
   <div class="inner">
      <h1 class="wow fadeInDown">Hello, world!</h1>
      <p class="wow fadeInUp">Whouaa !!!</p>
   </div>
</div>
<div class="foo foo-3 col-md-6 col-md-offset-3">
   <div class="inner">
      <button type="button" class="btn btn-success">Success</button>
   </div>
</div>
<div class="foo foo-4 col-md-6 col-md-offset-3 wow fadeInDown">
   <img class="" src="http://www.ponpokopon.net/livresillu/unenouvellemaison1.jpg" />
</div>
<div class="foo foo-5 col-md-6 …
Run Code Online (Sandbox Code Playgroud)

javascript jquery cpu-usage wow.js

5
推荐指数
1
解决办法
285
查看次数