cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maxim Borkunov <Maxim.Borku...@bridge-quest.com>
Subject Flow script performance issue
Date Wed, 18 Nov 2009 16:42:13 GMT
Hi everyone,

I am using lenya 2.0.2 (cocoon-2.1.12-dev) and I made some performance tests with jmeter utility.
50 users in the same time walking through a lenya site - that's my jmeter setup.
Unfortunatly, I found a bottleneck. The users (jmeter threads) freeze for a long time at pages
that uses flow scripts. Almost all web server socket listener threads at this time shows the
point listed below:

Thread [SocketListener0-24] (Suspended)
            FOM_JavaScriptInterpreter.setupContext(Redirector, Context, FOM_JavaScriptInterpreter$ThreadScope)
line: 571
            FOM_JavaScriptInterpreter.callFunction(String, List, Redirector) line: 718
            CallFunctionNode.invoke(Environment, InvokeContext) line: 139
            MatchNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext, String, Map) line: 47
            MatchNode.invoke(Environment, InvokeContext) line: 108
            PipelineNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext) line: 69
            PipelineNode.invoke(Environment, InvokeContext) line: 143
            PipelinesNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext) line: 69
            PipelinesNode.invoke(Environment, InvokeContext) line: 93
            ConcreteTreeProcessor.process(Environment, InvokeContext) line: 235
            ConcreteTreeProcessor.process(Environment) line: 177
            TreeProcessor.process(Environment) line: 254
            MountNode.invoke(Environment, InvokeContext) line: 118
            MatchNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext, String, Map) line: 47
            MatchNode.invoke(Environment, InvokeContext) line: 108
            PipelineNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext) line: 69
            PipelineNode.invoke(Environment, InvokeContext) line: 143
            PipelinesNode(AbstractParentProcessingNode).invokeNodes(ProcessingNode[], Environment,
InvokeContext) line: 69
            PipelinesNode.invoke(Environment, InvokeContext) line: 93
            ConcreteTreeProcessor.process(Environment, InvokeContext) line: 235
            ConcreteTreeProcessor.process(Environment) line: 177
            TreeProcessor.process(Environment) line: 254
            Cocoon.process(Environment) line: 699
            CocoonServlet.service(HttpServletRequest, HttpServletResponse) line: 1154
            CocoonServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 689
            ServletHolder.handle(ServletRequest, ServletResponse) line: 427
            WebApplicationHandler.dispatch(String, HttpServletRequest, HttpServletResponse,
ServletHolder, int) line: 475
            WebApplicationHandler(ServletHandler).handle(String, String, HttpRequest, HttpResponse)
line: 567
            PlusWebAppContext(HttpContext).handle(String, String, HttpRequest, HttpResponse)
line: 1565
            PlusWebAppContext(WebApplicationContext).handle(String, String, HttpRequest, HttpResponse)
line: 635
            PlusWebAppContext(HttpContext).handle(HttpRequest, HttpResponse) line: 1517
            PlusWebAppContext.handle(HttpRequest, HttpResponse) line: 158
            Server(HttpServer).service(HttpRequest, HttpResponse) line: 954
            HttpConnection.service(HttpRequest, HttpResponse) line: 814
            HttpConnection.handleNext() line: 981
            HttpConnection.handle() line: 831
            SocketListener.handleConnection(Socket) line: 244
            SocketListener(ThreadedServer).handle(Object) line: 357
            ThreadPool$PoolThread.run() line: 534


Is that synchronization in the org.apache.cocoon.components.flow.javascript.fom.FOM_JavaScriptInterpreter
class important?
Could you please advise how can I solve this performance problem?

Mime
View raw message