Hi Sebastiaan,

Regarding "management of large distributed systems" : the OSGi spec itself mainly deals with multiple libraries running in a single JVM. Some of the central features of OSGi can help in building a distributed system, but they aren't part of the OSGi spec itself. And Apache Felix doesn't have any subprojects that address distrubuted systems (AFAIK). You might want to look at Ace (ace.apache.org) or jboss fuse (though fuse is currently undergoing a radical rewrite, with the previous version effectively abandonware, so is difficult to base anything on at the moment).

Regarding osgi remote services: the spec is pretty elegant, and invoking a remote service is much like invoking a local one. However the existing implementations are mainly intended for integration with other systems, and not for performance. I recently needed a high-performance remote-services impl for communication between OSGi containers, and had great difficulty finding one. The reference impl from cxf.apache.org is based on xml and opens a new network connection for each call. The impl from Amdatu is based on json, and also opens a new network connection per call. The impl from eclipse ECF seems poorly maintained and poorly documented - at least I didn't feel comfortable integrating it into a production system. In short : if you want to occasionally make calls to external systems via SOAP or allow external systems to occasionally call in, then remote services with the default impls are ok. Building a cluster with it is not currently so easy.

One other issue with remote services : deserialization can cause problems. In particular, the code deserializing a stream needs to somehow locate the appropriate classes which is not so hard with a traditional java classpath, but more difficult under OSGi for obvious reasons.

Regards,
Simon

On 05/31/2015 06:22 PM, Sebastiaan la Fleur wrote:
Remote Services and Remote Service Admin were indeed the terms I was
looking for. Thanks Neil!

2015-05-30 13:55 GMT+02:00 Sebastiaan la Fleur <
sebastiaan.la.fl...@gmail.com>:

Thanks for your reply! Yeah, I was thinking about that when I was in the
shower just now haha. Sorry about that.

To rephrase: Is there a connection handler component in the Felix
framework that already handles accepting and losing socket connections
which can also be used to send or are we stuck using our own implementation
on top of java sockets? Does that component already use some form of
application layer protocol to abstract from the streams into information
packets?

I want to be able to talk between different nodes (send textual and video
data). Of course I can write my own connection managing software, but I
would expect something like that to already be in Felix. I saw Felix
contains a subproject to handle HTTP servlets, but the client server
architecture of HTTP is not entirely suitable in my case. Both clients need
to be able to start a connection to each other and both clients need to be
able to start the conversation on the established connection.

Hopefully this is a lot clearer to what I am searching for!

2015-05-30 13:19 GMT+02:00 Neil Bartlett <njbartl...@gmail.com>:

That's a really wide-open question... "information exchange over a
network" could mean so many things! Can you be more specific about your
requirements?

In the meantime, take a look at the Remote Services and Remote Service
Admin specs as they may be relevant.

--
Neil Bartlett
Sent from a phone


On Saturday, 30 May 2015 at 11:36, Sebastiaan la Fleur wrote:

Hi everyone!

As of yesterday I am trying to get into Apache Felix for a project. I
am still trying to get a basic grip on the framework. So far, if I am
understanding correctly the framework allows for remote install, update
etc. of bundles(highly modulerized code) on different devices which allows
for the management of large distributed systems. I have been looking for a
way to let these devices communicate using the framework but so far I was
not able to find any subproject or piece in the OSGi specification that
allows for this. Probable is that I missed it though(quite a bit of info
:P). Does Felix have a subproject/implementation to handle basic
information exchange over a network between OSGi capable devices? If so,
could you direct me to the place where the documentation of this is stored?



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@felix.apache.org
For additional commands, e-mail: users-h...@felix.apache.org

Reply via email to