To be exact, problem is probably not in method implResolveByName
itself, but it leads to java.util.concurrent.CopyOnWriteArrayList
$COWIterator.hasNext(). I hope next "table" is readable (mailing list
does not accept attachements):
+------------------------------------------------------------------------------------------------------+----------------+--------------------+
| Name
| Time (ms) | Invocation Count |
+------------------------------------------------------------------------------------------------------+----------------+--------------------+
| +---java.util.concurrent.CopyOnWriteArrayList$COWIterator.hasNext()
| 1 393 100 % | 2 130 942 100 % |
| |
| | |
|
+---org.apache.webbeans.container.InjectionResolver.implResolveByName(String)
| 1 380 99 % | 2 113 644 99 % |
| | |
| | |
| |
+---org.apache.webbeans.container.BeanManagerImpl.getInstanceByName(String,
CreationalContext) | 691 50 % | 1 056 822 50 % |
| | |
| | |
| |
+---org.apache.webbeans.container.BeanManagerImpl.getBeans(String)
| 689 49 % | 1 056 822 50 % |
Mark Struberg píše v Po 22. 02. 2010 v 20:32 +0000:
> Thanks Martin!
>
> And yes, this may be a problem, though not sure where it comes from ...
>
> :)
>
> LieGrue,
> strub
>
> --- Martin Koci <[email protected]> schrieb am Mo, 22.2.2010:
>
> > Von: Martin Koci <[email protected]>
> > Betreff: InjectionResolver.implResolveByName performance
> > An: [email protected]
> > Datum: Montag, 22. Februar, 2010 21:28 Uhr
> > Hi,
> >
> > I did some profiling and YourKitProfiler always marks
> > InjectionResolver.implResolveByName as hotspot. It is
> > called over 2
> > mills. times per request/response. All those calls come
> > from
> > ELResolver.getValue() - its is a very non trivial JSF
> > view so it is
> > probably ok (even two milions) and in application is no CDI
> > bean yet
> > (all are still spring and jsf managed).
> > Do you think it is a problem?
> >
> > Regards,
> >
> > Martin Kočí
> >
> >
> >
>
> __________________________________________________
> Do You Yahoo!?
> Sie sind Spam leid? Yahoo! Mail verfügt über einen herausragenden Schutz
> gegen Massenmails.
> http://mail.yahoo.com
>