我的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有关,但无法通过较小的程序确认。 我们使用
-client
和ParNew GC
在i386 32位,RHEL5和Java 1.5.0_10上运行。以下是我们迄今为止所尝试的内容:
我们限制了CPU亲和力,因此我们可以在高负载点击时实际使用服务器。 随着
strace
我们看到一个无限循环的SIGSEGV
然后sig返回。我们尝试使用Java程序重现这一点。 确实,SYS CPU%使用
WeakHashMap
或访问空指针时爬升得很高。 问题是fillStackTrace
占用了大量用户CPU%,这就是我们从未达到过100%SYS CPU的原因。我们知道,经过10个小时的压力,GC会变得疯狂,完整的GC有时需要5秒钟。 所以我们假设它与记忆有关。
在此期间的
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
andParNew GC
.Here's what we have tried so far:
We limited the CPU affinity so we can actually use the server when the high load hits. With
strace
we see an endless loop ofSIGSEGV
and then the sig return.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 thatfillStackTrace
took a lot of user CPU% and that's why we never reached 100% SYS CPU.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.
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. SendingSIGQUIT
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
最满意答案
您的函数
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 })
相关问答
更多-
TCP/IP模型是一个________。[2023-10-02]
a -
下列中不属于面向对象的编程语言的是?[2022-05-30]
a -
解决方法是从绝对类型下载redux类型:类型为typings i redux --ambient the solution is to download the redux typings from definitelytyped: typings i redux --ambient
-
发送没有类型的动作(Dispatch an action without a type)[2022-10-22]
您的函数signOutSuccess不会返回任何内容。 尝试类似的东西 export const signOutSuccess = () => { return {type: SIGN_OUT_SUCCESS} } 或者更简洁: export const signOutSuccess = () => ({ type: SIGN_OUT_SUCCESS }) Your function signOutSuccess does not return anything. Try somethi ... -
当然,您可以使用组件内的handleSubmit prop来代替连接。 它允许你提供一个带有三个参数的回调函数:values,dispatch和props。 所以你可以做一些事情:
-
我看到它的方式有三种选择: 通过在组件中封装isLoggedIn逻辑来防止调用toggleLoginModal 使用redux-thunk访问商店,并根据需要不dispatch任何操作 在你的reducer中处理这种逻辑,尽管我可能会三思而后行。 例子: 示例1:这假设您可以通过查看状态来判断用户是否已登录 class MyComp extends Component { render () { return ({!this.props.isLogged ...
如何在一个动作完成后在React js中分配动作?(How to dispatch a action in React js after one action is completed?)[2023-12-13]
我会告诉你两种方法来做到这一点, 将handleChange()中所选菜谱数组的创建逻辑添加到变量中,并使用此值调用api并发送调度。 如果选择复选框或删除旧的菜单,请使用pub-sub和Reducer内部的合并菜单,然后调用pubsub PubSub.publish()调用一个获取api的函数。 I will tell you two ways to do this, Add the logic for creating the array of selected cuisines in the hand ...在动作中设置内容类型(Setting content type in an action)[2023-08-06]
在Spring 3中,你通常不需要或者不想自己设置上下文类型,通常没有必要。 在需要返回JSON的控制器的情况下,返回JSON的最简单方法是从处理器方法返回MappingJacksonJsonView的实例。 这将为您设置内容类型。 杰克逊现在在Spring 3中有内置的支持。 In Spring 3, you generally don't need or want to set the context type yourself, it's usually unnecessary. In the cas ...我正在尝试发送一个动作,但它似乎没有注册(I am trying to dispatch an action but it does not seem to be registering)[2022-10-01]
好的,我相信我看到了你的问题。 你没有在正确的功能中使用dispatch 。 如果您在组件中使用showGeo ,则必须将Redux注入dispatch到showGeo函数中,以便您可以调度sendAction函数。 所以showGeo看起来应该像sendAction一样: showGeo = () => { return dispatch => { //... dispatch(sendAction()) // where this dispatches the action } ...问题是textAction是一个Action,这意味着你需要传递一个字符串: textAction("foo"); 我怀疑你想要的东西是这样的: class Program { static void Main(string[] args) { var testAction = test(); testAction("it works"); // or textAction.Invoke("it works"); ... 相关文章
更多- 《CPU源代码分析与芯片设计及Linux移植》扫描版[PDF]
- JBOSS运行几天后无响应
- struts+mysql+hibernate+dwr 做的网站,cpu占用好高啊...为什么,急啊,高手来啊?
- Linux 介绍
- SQL Server 压力测试
- spring 3.0 和jpa 整合 用jboss
- linux svn服务器搭建
- unix、Linux知多少
- 鸟哥的Linux私房菜服务器架设篇(第三版)
- java socket server
最新问答
更多- 如何使用自由职业者帐户登录我的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)