Closed
Description
Dave Syer opened SPR-16970 and commented
There's a lot of cacheing already in
AbstractApplicationEventMulticaster
, but it still shows up as a blip
on the flame graphs (roughly 3% of a stripped down Spring Boot app with functional bean registrations). Every
ApplicationListener
is queried to compute its event type for every
event that is processed (if it is not already a
GenericApplicationListener
, which most are not). The computation of
the generic type is what fills the flame
graph. GenericApplicationListenerAdapter
and/or
AbstractApplicationEventMulticaster
could probably be optimized to
improve this.
Affects: 5.0.7
Issue Links:
- Allow registration of application event listeners in a functional way [SPR-16872] #21411 Allow registration of application event listeners in a functional way
- Cache order result per Class in OrderUtils (for AnnotationAwareOrderComparator) [SPR-17064] #21602 Cache order result per Class in OrderUtils (for AnnotationAwareOrderComparator)
- Revise ResolvableType.as for introspection performance (limiting serializability) [SPR-17070] #21608 Revise ResolvableType.as for introspection performance (limiting serializability)
Referenced from: commits 478d725