ace-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marcel Offermans <marcel.offerm...@luminis.nl>
Subject Re: Use of ACE for a consumer application
Date Wed, 27 Mar 2013 03:45:06 GMT
Hello Dan,

On Mar 26, 2013, at 7:41 AM, Dan Gravell <elstensoftware@googlemail.com> wrote:

> Hi. I'm interested in using ACE in my product. I've always had trouble
> managing the configuration of my OSGi bundles. I create a new release each
> week with a set of bundles updated. Sometimes I add bundles, sometimes I
> remove, but quite often something seems to go wrong with the configuration.
> 
> What I really want is something that can download the latest distribution
> and install it for me, when the user says so. It feels like ACE can do this.

Yes.

> Unfortunately I cannot see much documentation on the site, so may I be
> indulged some questions?

Sure.

> - How many targets can ACE scale to? I have over 2000 new users each month,
> and probably about 20,000 active users

Hard to tell exactly, but we've setup ACE in such a way that you can not only create a single
server for all the targets, but also create a master server with several "relay" servers (which
act like proxies) to spread the load.

It also depends a bit on the number of updates, size of bundles and how often these targets
poll for changes.

> - How does target management work when users are behind common-or-garden
> ISPs with dynamic IPs etc? I don't really care about what each individual
> target is running, although it would be a nice feature to be able to
> remotely manage a given target. But this would be exceptional (maybe
> changing the logging on a particular user's target to diagnose some problem)

Right now, ACE keeps track of each individual target, but it can be setup so any new target
registers automatically and gets a specific software distribution.

ACE uses a management agent, which polls the server using HTTP. So dynamic IPs are no problem,
and firewalls usually also not.

> - How can this work with an installer? Ideally I'd like to install my
> entire product when the user downloads it and not have a two stage
> installation

That is currently not supported, unfortunately, but it is definitely an interesting use case
that we should explore. We actually do have some support for installing our deployment packages
from a local filesystem, but we cannot at this point make a seamless switch from local installation
to remote installation. I would not mind at all putting that on the roadmap though.

> - My app runs a Jetty web server where the Update UI lies... how does this
> work with ACE? Do I contact the ACE server API, or interact with the agent
> bundles co-located on the same OSGi container?

The management agent by default has an embedded scheduler that periodically polls the server.
Instead of that scheduler, you can also directly invoke the update task from OSGi (it is a
service). So your update UI could do that, and disable the scheduler.

I'm sure these answers have triggered more questions, so don't hesitate to keep asking! :)

Greetings, Marcel


Mime
View raw message