-
Type:
Suggestion
-
Resolution: Fixed
-
Component/s: None
Post processing via Spring createBean() is expensive for plugin modules
Confluence module descriptors and macro modules are now created via the Spring bean factory's createBean() method. This change in code path has been implemented so that these modules can be manipulated by bean post processors declared in the application context. Unfortunately the computation of point cut shadows that is a part of this process is fairly expensive resulting in slower application start up times.
Courses of attack:
- Optimise the pointcut matching operations
- Short circuit the pointcut shadow evaluations, make sure only the necessary bean post processors are activated when the module is created. This might be easily achieved when we start using a separate plugin Spring context.
Classes affected:
- com.atlassian.confluence.plugin.descriptor.CustomMacroModuleDescriptor
- com.atlassian.confluence.plugin.ConfluenceModuleDescriptorFactory
- blocks
-
CONFSERVER-10539 Improve Confluence start up performance
- Closed