|
|
Re: Pointers on debugging bundle startup times [message #725741 is a reply to message #725731] |
Thu, 15 September 2011 16:19 |
Barbara Rosi-Schwartz Messages: 448 Registered: July 2009 |
Senior Member |
|
|
Thanks Dmitry. Please see my comments below.
Quote:Are those bundles spring based?
Yes, they are.
Quote:Are you importing a lot of required services?
No, we are still at the beginning of development, so the bundles are quite tiny and simple. For instance, one of the bundles in question registers a service and consumes three other services (all via Spring DM)
Quote:If you are using spring osgi namespace to import services - try to set those up as optional and see if boot time decreases.
I can try doing that as an exercise, but those services are really required.
Quote:There could also be a lot of import expansion going on and you are spending a lot of time in a resolver. How large is your package import set?
Again, the import set is small; here's the Import-Package snippet from the same bundle:
Import-Package: com.iggroup.wb.core.common.exceptions,
com.iggroup.wb.core.common.utils.bundlemanagement.repository,
com.iggroup.wb.core.common.utils.bundlemanagement.repository.codec,
com.iggroup.wb.core.logger.api,
com.iggroup.wb.overseer.api.business,
com.iggroup.wb.overseer.api.domain,
com.iggroup.wb.overseer.api.ui,
com.iggroup.wb.overseer.authenticator.api,
com.iggroup.wb.overseer.domain,
org.apache.commons.lang,
org.junit,
org.osgi.framework,
org.springframework.core.io
The com.iggroup.* packages are exported by other very small bundles and only contain a few classes each.
|
|
|
|
Re: Pointers on debugging bundle startup times [message #725771 is a reply to message #725761] |
Thu, 15 September 2011 18:08 |
Dmitry Sklyut Messages: 279 Registered: January 2010 |
Senior Member |
|
|
As Glyn mentioned - without profiling there isn't much that I can think of.
Are all of the dependencies faulted in by the resolver, i.e. deployed to repository/usr and started on demand?
Can you try taking all of the small bundles that provide your imported packages and deploy them manually before deploying your main application bundle?
Drop them into pickup or create a plan and deploy that. Deploy your application into hot server.
[Updated on: Thu, 15 September 2011 18:08] Report message to a moderator
|
|
|
|
|
|
|
Re: Pointers on debugging bundle startup times [message #727974 is a reply to message #727044] |
Thu, 22 September 2011 10:19 |
Barbara Rosi-Schwartz Messages: 448 Registered: July 2009 |
Senior Member |
|
|
As Dmitri mentioned in one of the previous reply, the whole delay seems to be simply caused by bundles being deployed out of their implicit order and, as a consequence, wait times for service startup.
Interestingly, this delay is considerable in my dev sandbox server (where I can clearly see "Waiting for service xxx" type messages) but it all but disappears in my final installed app. Why is that? Surely services startup time has to be accounted for in both cases.
Also, in order to deploy bundles in the correct order in my sandbox server, do I really have to deploy them one by one (which is getting tedious with number of bundles increasing) or can I deploy a plan that specifies the correct order end rely on this order to be respected?
Thanks,
B.
[Updated on: Thu, 22 September 2011 11:15] Report message to a moderator
|
|
|
|
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.05245 seconds