You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Leonardo Uribe (Commented) (JIRA)" <de...@myfaces.apache.org> on 2012/02/25 17:11:49 UTC

[jira] [Commented] (MYFACES-3474) [perf] LifecycleProviderFactory does not cache created Factory

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

Leonardo Uribe commented on MYFACES-3474:
-----------------------------------------

I have to say it: Martin, you have found a very, very, very insteresting thing. I tried it and you are right. 

This few lines has a huge impact on performance. I reviewed all other SPI interfaces and does not have the problem, so it was just this class. Some months ago I detected a problem in this area, but instead check this class I optimize LifecycleProvider related interfaces, so I skipped this part. 

This finding is just great!.

I agree maybe this issue has something to do with the slow response time. Thanks a lot for the patch. This is a very valuable contribution.
                
> [perf] LifecycleProviderFactory does not cache created Factory
> --------------------------------------------------------------
>
>                 Key: MYFACES-3474
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3474
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.0.12, 2.1.6
>            Reporter: Martin Kočí
>            Assignee: Martin Kočí
>             Fix For: 1.2.12, 2.0.13, 2.1.7
>
>         Attachments: MYFACES-3474.patch
>
>
> It seems that
> org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(FacesContext, ManagedBean) tries to locale implementation of a interface, but the instance found is never stored in application map: see code in org.apache.myfaces.config.annotation.LifecycleProviderFactory.getLifecycleProviderFactory(ExternalContext)
> this lead to Webappclassloader.loadClass invocation, which is sychronized and accesses disk.
> Can significantly affect perfomance of myfaces app with managed-bean in multithreaded environment.
> maybe reason for http://prezi.com/dr3on1qcajzw/www-world-wide-wait-devoxx-edition/ ?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira