jstack 100% процессор
Так что я застрял, пытаясь понять, почему наше приложение иногда потребляет 100% ресурсов процессора. Я прочитал несколько очень полезных постов stackovertflow, но думаю, что на всякий случай, я хотел бы получить совет... руководство... помощь... что угодно. На самом деле, это также сводится к тому, что моя неопытность просматривает следы стека. Я был бы очень признателен, если бы кто-то мог указать на возможного виновника здесь, а также показать мне такие указатели, чтобы я мог лучше понять это.
Заслуживающие внимания темы (как мне кажется) ожидают мониторов:
Я получаю четыре из этих потоков последовательно jndi-0 - jndi-4 "jndi-0" prio=6 tid=0x000000001113e000 nid=0x187c в ожидании входа в монитор [0x0000000012a9f000] java.lang.Thread.State: BLOCKED (на объектном мониторе) в java.net.PlainSocketImpl.accept(PlainSocketImpl.java:388) - ожидание блокировки (a java.net.SocksSocketImpl) на java.net.ServerSocket.implAccept(ServerSocket.java:453) на java.net.ServerSocket.accept(ServerSocket.java:421) в jrun.servlet.network.NetworkService.accept(NetworkService.java:356) в jrun.naming.NamingNetworkService.accept(NamingNetworkService.java:115) в jrun.naming.NamingNetworkService.createRunnable(NamingNetworkService.java:141) в jrunx.scheduler.ThreadPool$DownstreamMetrics.createRunnable(ThreadPool.java:287) в jrunx.scheduler.ThreadPool$ThreadThrottle.createRunnable(ThreadPool.java:349) в jrunx.scheduler.ThreadPool$UpstreamMetrics.createRunnable(ThreadPool.java:241) на jrunx.scheduler.WorkerThread.run(WorkerThread.java:62) Заблокированные собственные синхронизаторы: - Никто
"jrpp-298" prio=6 tid=0x0000000014730800 nid=0xdd4 в ожидании записи монитора [0x000000001cc4b000] java.lang.Thread.State: BLOCKED (на объектном мониторе) в coldfusion.runtime.LocalScope.put(LocalScope.java:247) - ожидание блокировки (coldfusion.runtime.VariableScope) в coldfusion.runtime.NeoPageContext.SymTab_setValidatedSimpleName(NeoPageContext.java:1339) в coldfusion.runtime.NeoPageContext.SymTab_txt.NoTateWame.TateNameFid.TateNameFid.Tate_Played_Tate_Played_Tate_Played_Tate_Med_Rate_Date_Med_Rate_Tate_Mate(NeoPageContext.java:524) в coldfusion.runtime.NeoPageContext.setAttribute(NeoPageContext.java:392) в coldfusion.runtime.CfJspPage._set(CfJspPage.java:369) в cfmathFunctions2ecfm1090027769$funcREDUCEBARBASE.runFunction(C:\SIWEB\ CFW \controllers\ContentLogic\mathFunctions.cfm:711) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) по адресу coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethof.filf. вызывать (FunctionAccessFilter.java:59) по адресу coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192) по адресу coldfusion.runtime.CfjspPage._fjspP.F) в Statement26069.evaluate(:1) в coldfusion.compiler.ExprClassLoader.evaluate(ExprClassLoader.java:143) в coldfusion.runtime.CFPage.Evaluate(CFPage.java:1726) в cfContentLogic2ecfc1938419849$funcEVALUATEFUNCTIONSTRING.runFunction(C:\SIWEB\cfw\controllers\ContentLogic.cfc:479) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.ilFF. вызывать (FunctionAccessFilter.java:59) в coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) в Coldfusion_J.JPF:2436) at cfContentLogic2ecfc1938419849$funcFINDANDEVALUATE.runFunction(C:\SIWEB\cfw\controllers\ContentLogic.cfc:528) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) по адресу coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47) по адресу coldfusion.runtime.UDFMethod $ ReturnTypeFild.F: UDF..runtime.UDFMethod. в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:360) в coldfusion.runtime.UDFMethodkeil_ofjofMoD coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) на coldfusion.ru ntime.UDFMethod.runFilterChain (UDFMethod.java:277) при coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) в coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2436) при cfContentLogic2ecfc1938419849$funcPROCESSDYNAMICITEMBYQUESTIONIDQGID.runFunction(С: \ SIWEB \ cfw \ controllers \ ContentLogic.cfc: 69) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) по адресу coldfusion.runtime.UDFMethod $ ReturnTypeFilter.invoke (UDFMetho60.timetime)..UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:324) в coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) в coldfusion.runtime.UDFMethod.runFilterChain: вызывать (UDFMethod.java:463) по адресу coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:453) по адресу coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:320) по адресу coldfusion.runtime.CfJspPage._jspPage.jinPoke (:2222) at cfitemPackaging2ecfm1230617345$funcPREPAREDITEMBYQUESTIONIDQGID.runFunction(C:\SIWEB\cfw\controllers\ProtectedBusinessLogic\itemPackaging.cfm:693) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) по адресу coldfusion.runtime.UDFMethod $ ArgumentColvohoFDFF:) at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.runtime.UDFMethod.invoke3: временная точка перехода в другое время (UDF).CfJspPage. at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:360) в coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:324) в функции Coldfusion.filter.Af coldfusion.runtime.UDFMethod.runFilterChain (UDFMethod.ja va: 277) по адресу coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) по адресу coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2436) в cfitemPackaging2ecfm1230617RFFWID_WFCWEBFBTFWBTFWBTFWBTFWBTFWBTFWBTFWBTFWBTFBWBTFWDBTFBWBTFBWBTFBWBTFBWBTFBWBTFBWBTFBWBTFBWBTFWDBTFBWDWRBTFWBTFWBTFBTTWB ProtectedBusinessLogic \ itemPackaging.cfm: 73) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.runtime.UDFMethod $ ReturnTypeFilter.invoke (UDFMethod.java:3fot.intimeFolg.ToGToGToGToToGToToGToToGToToGToToGToToGToToGToToGToGToGToToGToGToToToGoTo) (UDFMethod.java:324) в coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) в coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.Metho.FD.Funter 463) по адресу coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:453) по адресу coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:320) по адресу coldfusion.runtime.CfJspPage._invoke(CfJspPage.jf250804c4502) funcPRACTICESESSION.runFunction(C:\SIWEB\ CFW \ контроллеры \Test\practicesession.cfm:272) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:324ililFilterFilterFilterFilterFilterFilterFilter.inf) FunctionAccessFilter.java:59) at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) в coldfusion.runsp.jp.jjFF.JDF) в coldfusion.tagext.lang.InvokeTag.doEndTag(InvokeTag.java:432) в coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2662) в cfcfml2ecfm667848367 \global\cfml.cfm:177) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47) в coldfusion.runtime.UDFMetvoilterter $. UDFMethod.java:360) at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:324) в coldfusion.filter.FunctionAccessFilter.invoke (Functi) onAccessFilter.java:59) в coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) в coldfusion.runsp.jp.jjFF.JDF) at cfprocessing2ecfm76711320$func$CALLACTION.runFunction(C:\SIWEB\cfw\wheel \controller\processing.cfm:85) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusionvoilfilter. (SilentFilter.java:47) по адресу coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:360) по адресу coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethodilf.infid.inf_file.inf32.inf_file.inf). FunctionAccessFilter.java:59) at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:277) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:463) в coldfusion.runsp.jp.jjFF.JDF) на cfprocessing2ecfm76711320$func$PROCESSACTION.runFunction(C:\SIWEB\cfw\wheel \controller\processing.cfm:60) на coldfusion.runt ime.UDFMethod.invoke (UDFMethod.java:418) по адресу coldfusion.filter.SilentFilter.invoke(SilentFilter.java:47) по адресу coldfusion.runtime.UDFMethod $ ReturnTypeFilter.invoke (UDFMethohod.tv). $ ArgumentCollectionFilter.invoke (UDFMethod.java:324) по адресу coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) по адресу coldfusion.runtime.UDFMethod.runFilterChain (UDFMethod.Funter.jf). UDFMethod.java:192) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:448) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:308) в coldfusion.runtime.CfJspPage._invoke (CfJsp:) at cfrequest2ecfm104933708$func$REQUEST.runFunction(C:\SIWEB\cfw\wheel \dispatch\request.cfm:166) в coldfusion.runtime.UDFMethod.invoke (UDFMethod.java:418.) в coldfusioninfilter (SilentFilter.java:47) в coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:360) в coldfusion.runtime.UDFMethod $ Аргумент CollectionFilter.invoke (UDFMethod.java:324) по адресу coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:59) по адресу coldfusion.runtime.UDFMethod.runFilterChain (UDFMethod.java:2dhodFundeFDFF)..java: 192) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:448) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:308) в coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:22) в cfindex2ecfm812783003.runPage(C:\SIWEB\cfw\wheel \index.cfm:1) в coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196) в coldfusion.tagext.lang.IncludeTag.doTartjag (Включить:370. в coldfusion.tagext.lang.IncludeTag.doStartTag (IncludeTag.java:370) в coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2661) в cfonrequest2ecfm951311187$funcONREQUEST.runFunction(C:\SIWEB\cfw\wheel \events\onrequest.cfm:1) в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:418) в coldfusion.runtime.UDFMethod $ ReturnTypeFilter.jet (UDF).: 360. в coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:192) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:448) в coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:308) в coldfusion.AppEventInvoker.invoke(AppEventInvoker.java:74) по адресу coldfusion.runtime.AppEventInvoker.onRequest(AppEventInvoker.java:243) по адресу coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:est9FilterFilterFilterFilter).java:48) в coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) при холодном синтезе.filter.PathFilter.invoke(PathFilter.java:86) в coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) в coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28ter) в coldfusion.filter.filter.filter. (BrowserFilter.java:38) в coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) в coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) в coldfusion.filter.DatasourceFilter.inavake: D (22) в coldfusion.filter.RequestThrottleFilter.invoke(RequestThrottleFilter.java:126) в coldfusion.CfmServlet.service(CfmServlet.java:175) в coldfusion.bootstrap.BootstrapServlet.service(Bootstraj.serv.89).FilterChain.doFilter(FilterChain.java:86) на com.intergral.fusionreactor.filter.FusionReactorFilter.k(FusionReactorFilter.java:636) на com.intergral.fusionreactor.filter.FusionReactorFilter.d(FusionReactorF2: at)..intergral.fusionreactor.filter.FusionReactorFilter.doFilter(FusionReactorFilter.java:171) в jrun.servlet.FilterChain.doFilter(FilterChain.java:94) в coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42) в coldfusion.bootstrailFot: 46) в jrun.servlet.FilterChain.doFilter(FilterChain.java:94) в jrun.servlet.FilterChain.service(FilterChain.java:101) в jrun.servlet.ServletInvoker.invoke(ServletInvoker.javar:106) в.servlet.JRunProxyService.invokeRunnable(JRunProxyService.java:203) в jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320) в jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428) в jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266) в jrunx.scheduler.WorkerThread.run(WorkerThread.java:66) Заблокированные собственные синхронизаторы: - Нет
Время трассировки: 10:50:51.504 18-Sep-2012Thid ID: 0x19 (25) Имя потока: jndi-3Приоритет: 5Хэш-код: 290417686 Состояние: RUNNABLE"jndi-3" prio=5 runnablejava.net.PlainSocketImpl.socketAmpIce (PlainSojava):???)[Собственный метод]java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)java.net.ServerSocket.implAccept(ServerSocket.java:453)java.net.ServerSocket.accept(ServerSocket.java:421)) jrun.servlet.network.NetworkService.accept(NetworkService.java:356)jrun.naming.NamingNetworkService.accept(NamingNetworkService.java:115)jrun.naming.NamingNetworkService.createRunnable(NamingNetworkService.java:141)jrunx.scheduler.ThreadPool$DownstreamMetrics.createRunnable(ThreadPool.java:287)jrunx.scheduler.ThreadPool$ThreadThrottle.createRunnable(ThreadPool.java:349)jrunx.scheduler.ThreadPool$UpstreamMetrics.createRunnable(ThreadPool.java:241)jrunx.scheduler.WorkerThread.run(WorkerThread.java:62)
1 ответ
Я рекомендую попробовать JVisualVM - он отлично подходит для сортировки потоков. Другим хорошим вариантом является использование Eclipse, который позволит вам также проходить отдельные потоки в режиме отладки.