Hi team.
It seems that in the current flow of invoking a RequestMapping endpoint,
org.springframework.web.reactive.result.method.annotation.RequestMappingHandlerAdapter#handle is creating a new org.springframework.web.reactive.result.method.InvocableHandlerMethod for each new request (might be worth caching?), which then creates a new org.springframework.web.reactive.result.method.HandlerMethodArgumentResolverComposite that seems to cache the argument resolvers, but is only valid for this single invocation.
My suggestion is to make the HandlerMethodArgumentResolver#argumentResolverCache inside HandlerMethodArgumentResolverComposite static to allow caching the resolvers between invocations, as the supportsParameter() seems like a pure function, as well as most implementations are using reflections to get the methods/arguments annotations which is not cheap.
Thanks
Comment From: rstoyanchev
Superseded by #29980.