[
https://issues.apache.org/jira/browse/FELIX-2282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Felix Meschberger updated FELIX-2282:
-------------------------------------
Affects Version/s: webconsole-3.1.0
(was: webconsole-3.0.0)
> Optimize Services Printer
> -------------------------
>
> Key: FELIX-2282
> URL: https://issues.apache.org/jira/browse/FELIX-2282
> Project: Felix
> Issue Type: Improvement
> Components: Web Console
> Affects Versions: webconsole-3.1.0
> Reporter: Valentin Valchev
> Assignee: Valentin Valchev
> Fix For: webconsole-3.1.2
>
> Attachments: ServicesConfigurationPrinter.java
>
>
> When navigating through the Configuration Status tabs, the Services is a
> little bit slower than others (except Bundles, which is the slowest). I look
> at the code and it might be improved, to make is faster.
> It seems that implementation now is so slow because first it renders to JSON
> and then converts he data to text.
> A significant optimization can be achieved if:
> 1. Skip to JSON conversion - generate the text directly from the service
> references.
> 2. Improve usage of message formatter by using pre-parsed formatters:
> final MessageFormat format = new MessageFormat(pattern);
> ..
> format.format(object[])
> instead of: MessageFormat.format(pattern, object[])
> 3. reuse one Object[] for MessageFormat - this will reduce the temporary
> objects
> ---
> I've also created a prototype and the performance improvement is even visible
> while browsing the tabs. The measured results are:
> ServicesServlet.printConfiguration(): now = 250
> ServicesConfigurationPrinter.printConfiguration(): now = 140
> ServicesServlet.printConfiguration(): now = 250
> ServicesConfigurationPrinter.printConfiguration(): now = 141
> ServicesServlet.printConfiguration(): now = 265
> ServicesConfigurationPrinter.printConfiguration(): now = 125
> ServicesServlet.printConfiguration(): now = 250
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.