首页 \ 问答 \ 我的JBoss服务器在Linux上遇到100%的SYS CPU;(My JBoss server hits 100% SYS CPU on Linux; what can cause this?)

我的JBoss服务器在Linux上遇到100%的SYS CPU;(My JBoss server hits 100% SYS CPU on Linux; what can cause this?)

我们一直在调试这个JBoss服务器问题。 经过大约10个小时的工作,服务器进入100%CPU恐慌攻击并停止。 在此期间,您无法运行任何新程序,因此您甚至无法使用kill -quit来获取堆栈跟踪。 这些高100%SYS CPU负载持续10-20秒,每隔几分钟重复一次。

我们已经工作了很长一段时间。 我们怀疑它与GC有关,但无法通过较小的程序确认。 我们使用-clientParNew GC在i386 32位,RHEL5和Java 1.5.0_10上运行。

以下是我们迄今为止所尝试的内容:

  1. 我们限制了CPU亲和力,因此我们可以在高负载点击时实际使用服务器。 随着strace我们看到一个无限循环的SIGSEGV然后sig返回。

  2. 我们尝试使用Java程序重现这一点。 确实,SYS CPU%使用WeakHashMap或访问空指针时爬升得很高。 问题是fillStackTrace占用了大量用户CPU%,这就是我们从未达到过100%SYS CPU的原因。

  3. 我们知道,经过10个小时的压力,GC会变得疯狂,完整的GC有时需要5秒钟。 所以我们假设它与记忆有关。

  4. 在此期间的jstack显示所有线程都被阻止。 pstack在那段时间里偶尔出现MarkSweep堆栈跟踪,所以我们也不能确定这一点。 发送SIGQUIT没有任何结果:Java在SYS%加载周期结束后转储了堆栈跟踪。

我们现在尝试用一小段代码重现这个问题,这样我们就可以问Sun.

如果您知道是什么原因造成的,请告诉我们。 我们对想法持开放态度,我们无能为力,欢迎任何想法:)

谢谢你的时间。


We've been debugging this JBoss server problem for quite a while. After about 10 hours of work, the server goes into 100% CPU panic attacks and just stalls. During this time you cannot run any new programs, so you can't even kill -quit to get a stack trace. These high 100% SYS CPU loads last 10-20 seconds and repeat every few minutes.

We have been working on for quite a while. We suspect it has something to do with the GC, but cannot confirm it with a smaller program. We are running on i386 32bit, RHEL5 and Java 1.5.0_10 using -client and ParNew GC.

Here's what we have tried so far:

  1. We limited the CPU affinity so we can actually use the server when the high load hits. With strace we see an endless loop of SIGSEGV and then the sig return.

  2. We tried to reproduce this with a Java program. It's true that SYS CPU% climbs high with WeakHashMap or when accessing null pointers. Problem was that fillStackTrace took a lot of user CPU% and that's why we never reached 100% SYS CPU.

  3. We know that after 10 hours of stress, GC goes crazy and full GC sometimes takes 5 seconds. So we assume it has something to do with memory.

  4. jstack during that period showed all threads as blocked. pstack during that time, showed MarkSweep stack trace occasionally, so we can't be sure about this as well. Sending SIGQUIT yielded nothing: Java dumped the stack trace AFTER the SYS% load period was over.

We're now trying to reproduce this problem with a small fragment of code so we can ask Sun.

If you know what's causing it, please let us know. We're open to ideas and we are clueless, any idea is welcome :)

Thanks for your time.


原文:https://stackoverflow.com/questions/654872
更新时间:2023-11-08 12:11

最满意答案

您的函数signOutSuccess不会返回任何内容。

尝试类似的东西

export const signOutSuccess = () => {
    return {type: SIGN_OUT_SUCCESS}
}

或者更简洁:

export const signOutSuccess = () => ({
    type: SIGN_OUT_SUCCESS
})

Your function signOutSuccess does not return anything.

Try something like that

export const signOutSuccess = () => {
    return {type: SIGN_OUT_SUCCESS}
}

Or more concise:

export const signOutSuccess = () => ({
    type: SIGN_OUT_SUCCESS
})

相关问答

更多

相关文章

更多

最新问答

更多
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • 电脑高中毕业学习去哪里培训
  • 电脑系统专业就业状况如何啊?
  • IEnumerable linq表达式(IEnumerable linq expressions)
  • 如何在Spring测试中连接依赖关系(How to wire dependencies in Spring tests)
  • Solr可以在没有Lucene的情况下运行吗?(Can Solr run without Lucene?)
  • 如何保证Task在当前线程上同步运行?(How to guarantee that a Task runs synchronously on the current thread?)
  • 在保持每列的类的同时向数据框添加行(Adding row to data frame while maintaining the class of each column)
  • 的?(The ? marks in emacs/haskell and ghc mode)
  • 一个线程可以调用SuspendThread传递自己的线程ID吗?(Can a thread call SuspendThread passing its own thread ID?)
  • 延迟socket.io响应,并“警告 - websocket连接无效”(Delayed socket.io response, and “warn - websocket connection invalid”)
  • 悬停时的图像转换(Image transition on hover)
  • IIS 7.5仅显示homecontroller(IIS 7.5 only shows homecontroller)
  • 没有JavaScript的复选框“关闭”值(Checkbox 'off' value without JavaScript)
  • java分布式框架有哪些
  • Python:填写表单并点击按钮确认[关闭](Python: fill out a form and confirm with a button click [closed])
  • PHP将文件链接到根文件目录(PHP Linking Files to Root File Directory)
  • 我如何删除ListView中的项目?(How I can remove a item in my ListView?)
  • 您是否必须为TFS(云)中的每个BUG创建一个TASK以跟踪时间?(Do you have to create a TASK for every BUG in TFS (Cloud) to track time?)
  • typoscript TMENU ATagParams小写(typoscript TMENU ATagParams lowercase)
  • 武陟会计培训类的学校哪个好点?
  • 从链接中删除文本修饰(Remove text decoration from links)