felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FELIX-4692) Improve Service access time
Date Tue, 06 Jan 2015 13:25:34 GMT

    [ https://issues.apache.org/jira/browse/FELIX-4692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14266086#comment-14266086
] 

Richard S. Hall commented on FELIX-4692:
----------------------------------------

Very interesting. I think #5 is pretty close to optimal. Other than a couple of code formatting
issues, I'd say go ahead and apply it.

> Improve Service access time
> ---------------------------
>
>                 Key: FELIX-4692
>                 URL: https://issues.apache.org/jira/browse/FELIX-4692
>             Project: Felix
>          Issue Type: Improvement
>          Components: Framework
>    Affects Versions: framework-4.4.1
>            Reporter: Felix Meschberger
>            Assignee: Felix Meschberger
>             Fix For: framework-4.6.0
>
>         Attachments: FELIX-4692-2.patch, FELIX-4692.diff
>
>
> Currently the ServiceRegistry takes roughly 1ms to access a single service. In a reasonably
large system, this may over time consume considerable time.
> For example in our inhouse system sporting roughly 5000 services with 15'000 service
accesses during startup, these accesses acount for almost 15 seconds or roughly 25-30% of
the total startup time.
> Internally all accesses to services are handled with a Filter even if the service is
simply retrieved with the service name without a filter. This causes a considerable overhead.
> A simple improvement is to keep services not only in a global Capabitliy Set accessible
through generic filters but also keep such a set for each registered service name.
> The measured improvement of this change is substantial: accessing these 15'000 services
now only takes roughly 3 seconds or 0.2 ms per service or 5 times faster.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message