sling-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Julian Sedding (Jira)" <>
Subject [jira] [Commented] (SLING-9365) Optimize servlet to resource provider servlet mounter
Date Thu, 16 Apr 2020 09:14:00 GMT


Julian Sedding commented on SLING-9365:

A solution somewhere in between having a ResourceProvider for every servlet and having none
at all might be a single RP for all servlets. It could bind servlets dynamically and thus
wouldn't need to be restarted. I'm not sure if/how that could be done. But handling the addition/removal
of servlets inside a specialised implementation might allow for some shortcuts to make it


Another way we have to inject Resources into a tree is the ResourceDecorator interface, which
I have used in projects to "mount" read-only resource trees onto arbitrary resources. This
would alow for a similar implementation as above, but might be simpler? The only thing that's
a little tricky is that in order to decorate a hierarchy, the ResourceResolver needs to be
(properly) decorated as well. I'm not sure that this approach allows sending resource added/removed
events, but I suppose it should be possible.


> Optimize servlet to resource provider servlet mounter
> -----------------------------------------------------
>                 Key: SLING-9365
>                 URL:
>             Project: Sling
>          Issue Type: Improvement
>          Components: Scripting
>    Affects Versions: Servlets Resolver 2.6.4
>            Reporter: Karl Pauls
>            Assignee: Karl Pauls
>            Priority: Major
>             Fix For: Servlets Resolver 2.6.6
> The current ServletMounter creates a resource provider for each registered servlet. That
works fine for a given amount of servlets but can become problematic for a high number of
servlets as it means that on the one hand, the number of services is doubled and on the other
hand, a lot of notifications are send out as well as a lot of computation has to be done by
the resource resolver. 
> As an optional remedy for these kinds of scenarios, we should allow to configure the
mounter to instead provide a single resource provider that has manages the servlets internally.

This message was sent by Atlassian Jira

View raw message