[ 
https://issues.apache.org/jira/browse/WW-3786?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13486017#comment-13486017
 ] 

Philip Luppens commented on WW-3786:
------------------------------------

I doubt this is still relevant, but I'll comment regardless since we've seen 
similar issues. Obviously, the New Relic transaction overview is not drilling 
deep enough, since the filter() method encompasses the entire request 
processing.

If you were to look deeper, you'd probably find that a) you're either doing 
something wrong in your code (eg. inefficient SQL, non-parallel calls to 
resources, ...) or, b) you're encountering a lot of blocked threads that are 
timing out (hence the value so close to 60 seconds - that looks like a timeout) 
on some OGNL methods or resource bundle handling. I suggest adding a profiler 
and having a look at the blocking of threads.

If you're on 2.1.8, you might want to a) upgrade to a later version, or b) 
apply the patch that was provided to resolve the several blocking threads in 
the OGNL runtime. We've had similar issues, and applying the OGNL patches and 
backporting the locking of the resource bundles improvements made a massive 
difference in the processing time of our calls.
                
> StrutsPrepareAndExecuteFilter.doFilter() - Takes up to 60 seconds for certain 
> cases
> -----------------------------------------------------------------------------------
>
>                 Key: WW-3786
>                 URL: https://issues.apache.org/jira/browse/WW-3786
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Dispatch Filter
>    Affects Versions: 2.1.8
>         Environment: RHEL + Tomcat with Struts 2.1.8 and Spring 3.x
>            Reporter: Black Pearl
>              Labels: StrutsPrepareAndExecuteFilter, struts,, struts2,
>             Fix For: 2.3.7
>
>         Attachments: ASF.LICENSE.NOT.GRANTED--screenshot-web trasaction 
> trace.jpg
>
>
> Hi Struts Team...
> We use New Relic - a software which kinds of breaks down every web 
> transaction. While monitoring the transactions taking longest time, we came 
> across multiple actions with a single issue where 99% of the time is 
> attributed to this filter call.
> Here is how we have configured the web.xml
> ...
>       <filter>
>               <filter-name>struts</filter-name>
>               
> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
>                <init-param>
>               <param-name>disableActionScanning</param-name>
>               <param-value>true</param-value>         
>         </init-param>
>         <init-param>
>               <param-name>actionPackages</param-name>
>               <param-value>com.xxx.application.webapp.*</param-value>
>         </init-param>
>       </filter>
>       <filter-mapping>
>               <filter-name>struts</filter-name>
>               <url-pattern>/*</url-pattern>
>       </filter-mapping>
> ...
> Let me know if you all need any more information to help me out on this.
> Thanks,
> BP.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to