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

Ioannis Canellos commented on KARAF-823:
----------------------------------------

Please let me share what I had in mind. By dosgi I am referring to remote 
services (as described in the osgi compendium chapter 13) and not to a specific 
implementation (e.g. cxf dosgi).

Since cellar already provides a) a node discovery mechanism b) means to 
dispatch events, commands to remote nodes and c) distributed memory (which can 
be used as a remote service registry), I was thinking to implement the 
specification (or at least a part of it) on top of cellar.  

I also have thought about using an existing implementation like cxf-dosgi, and 
r-osgi, but I think that they don't fit well because simply they are build from 
scratch (from discovery mechanism to transport layer etc). 

Regarding the implementation, what I had in mind is to implement a service 
listener that will create a queue (hazelcast queue) for each interface of the 
exported service. A ListenerHook that will register a proxy for each imported 
service (service that is not found locally but is found remotely). And the 
actual proxy that will dispatch remote service call commands (cellar commands) 
to the appropriate queue. The rest are already provided by celllar. 

I have implemented the above and also some samples and I am currently testing 
it. So far it seems to be working fine, it requires no configuration (only a 
property to mark a service as remote), it automatically scales (if you add more 
nodes that export the service it automatically load balances the load etc) and 
does not introduces any other dependency.

I was thinking to commit it to trunk by the end of the week. wdyt? 

> Add DOSGi support for Cellar
> ----------------------------
>
>                 Key: KARAF-823
>                 URL: https://issues.apache.org/jira/browse/KARAF-823
>             Project: Karaf
>          Issue Type: New Feature
>          Components: cellar-core
>            Reporter: Ioannis Canellos
>            Assignee: Ioannis Canellos
>             Fix For: cellar-3.0.0
>
>
> It would be nice to have the ability to have distributed services on top of 
> cellar.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to