You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by ant elder <an...@gmail.com> on 2009/11/11 12:53:59 UTC
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
On Tue, Nov 10, 2009 at 9:38 PM, <rf...@apache.org> wrote:
> Author: rfeng
> Date: Tue Nov 10 21:38:58 2009
> New Revision: 834683
>
> URL: http://svn.apache.org/viewvc?rev=834683&view=rev
> Log:
> Start to add an Apache ZooKeeper based SCA domain registry
>
What are you thinking about for this? I've no issue with having
multiple impls but as none of the endpoint registry impls have been
finished yet it would be good to work together on getting one that
works well - should that be on this one now?
...ant
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by ant elder <an...@apache.org>.
On Wed, Nov 11, 2009 at 7:07 PM, Raymond Feng <en...@gmail.com> wrote:
> Two issues here:
>
> 1) ATM, the static route is only visible to the node where the route is
> defined. For some reason, the members added by the static route is not
> propagated to the group membership. I didn't have chance to fix that.
>
Will you get a chance in the near future? I will if you wont but you
know this code far better than me so it would be much quicker if you
debugged it.
...ant
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by Raymond Feng <en...@gmail.com>.
Two issues here:
1) ATM, the static route is only visible to the node where the route is
defined. For some reason, the members added by the static route is not
propagated to the group membership. I didn't have chance to fix that.
2) The static route can be used to add members to the group. But the primary
purpose of Tribes is multicast/discovery. Multicast is not always possible
(or easy to configure/use) in an Enterprise environment due to issues such
as VPN, firewalls and multi-homed machines.
Thanks,
Raymond
--------------------------------------------------
From: "ant elder" <an...@gmail.com>
Sent: Wednesday, November 11, 2009 10:04 AM
To: <de...@tuscany.apache.org>
Subject: Re: svn commit: r834683 - in
/tuscany/java/sca/modules/endpoint-zookeeper
> On Wed, Nov 11, 2009 at 5:10 PM, Raymond Feng <en...@gmail.com> wrote:
>
>
>>
>> Tribes is simple as multicast is supported by the JDK and no "server"
>> needs
>> to be started. There are a few down sides though. For example,
>> * It is not very enterprise network friendly
>
> By that are you referring to how it currently only support multicast
> properly not static routes? The other week you said you were going to
> look at fixing the static routes problem, did you do that and find its
> hard to fix?
>
> ...ant
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by ant elder <an...@gmail.com>.
On Wed, Nov 11, 2009 at 5:10 PM, Raymond Feng <en...@gmail.com> wrote:
>
> Tribes is simple as multicast is supported by the JDK and no "server" needs
> to be started. There are a few down sides though. For example,
> * It is not very enterprise network friendly
By that are you referring to how it currently only support multicast
properly not static routes? The other week you said you were going to
look at fixing the static routes problem, did you do that and find its
hard to fix?
...ant
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by Raymond Feng <en...@gmail.com>.
I agree. It is a matter of separation of different concerns.
IMO, the registry layer provides the infrastructure to share information
(like a virtual map). The information can be any metadata that are relevant
to the SCA domain. We can use that to do different things, such as:
* Share endpoint descriptions and policy definitions for all running
components in the domain
* Share contributions and composites
* Share node configurations
Both Tribes and ZooKeeper provide such capabilities within their boundaries.
The registry SPI at this point only deal with endpoints. The same utility
can be used to build a domain registry that manages
contributions/composites/nodes.
Thanks,
Raymond
--------------------------------------------------
From: "Simon Laws" <si...@googlemail.com>
Sent: Wednesday, November 11, 2009 9:50 AM
To: <de...@tuscany.apache.org>
Subject: Re: svn commit: r834683 - in
/tuscany/java/sca/modules/endpoint-zookeeper
> It would be worth discussing what those Tuscany functions might be in
> the context of [1]. Having said this the diagram there is a little
> biased. I'm concerned that there is a temptation to believe that we
> are either building a distributed domain infrastructure that is
> controlled from a central domain manager (maybe using zookeeper to
> support the distribution) or that has no central point of control
> (maybe using tribes to support the distribution). I think it would
> serve us well if we support both (at the same time technology
> permitting).
>
> I would like to be able to say If I want to add a contribution to a
> specific node and hence directly influence where it will run then
> sure. Maybe I want to do that with a webapp for example. Alternatively
> if I want to add it to a central domain manager and have it pick a
> node for me then that's great too.
>
> I'm advocating that we avoid building registry APIs that are topology
> specific if we can avoid it.
>
> Simon
>
> [1] http://cwiki.apache.org/confluence/display/TUSCANYWIKI/Domain
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by Simon Laws <si...@googlemail.com>.
It would be worth discussing what those Tuscany functions might be in
the context of [1]. Having said this the diagram there is a little
biased. I'm concerned that there is a temptation to believe that we
are either building a distributed domain infrastructure that is
controlled from a central domain manager (maybe using zookeeper to
support the distribution) or that has no central point of control
(maybe using tribes to support the distribution). I think it would
serve us well if we support both (at the same time technology
permitting).
I would like to be able to say If I want to add a contribution to a
specific node and hence directly influence where it will run then
sure. Maybe I want to do that with a webapp for example. Alternatively
if I want to add it to a central domain manager and have it pick a
node for me then that's great too.
I'm advocating that we avoid building registry APIs that are topology
specific if we can avoid it.
Simon
[1] http://cwiki.apache.org/confluence/display/TUSCANYWIKI/Domain
Re: svn commit: r834683 - in /tuscany/java/sca/modules/endpoint-zookeeper
Posted by Raymond Feng <en...@gmail.com>.
We have the multicast based Tribes registry working (I got it working with
OSGi remote services). I'm sure that we need to improve it to cover more use
cases.
Tribes is simple as multicast is supported by the JDK and no "server" needs
to be started. There are a few down sides though. For example,
* It is not very enterprise network friendly
* The data cannot be persistent
* No built-in security
ZooKeeper provides a distributed registry with built-in HA across the server
instances. We can use it for both DomainRegistry (sharing endpoint
descriptions, policy definitions) and DomainManager (sharing contributions,
composites and node configurations).
* We can control where the servers are running
* The data can be persistent (and transactional) or transient
* The data are organized as a tree
* ACLs are supported.
The down side is that it's a bit heavy. We need to start at least one
ZooKeeper server which consumes quite a bit disk space to keep the data.
For the implementations, there are two layers here:
1. Implement the registry using the Tribes/ZooKeeper APIs.
2. Adding Tuscany functions on top of the registry SPI.
I don't think we need more people on 1. Once 1 is implemented, Tuscany
shouldn't see much difference between Tribes or ZooKeeper from the
functional perspective. Helps are welcome to enhance 2.
Thanks,
Raymond
--------------------------------------------------
From: "ant elder" <an...@gmail.com>
Sent: Wednesday, November 11, 2009 3:53 AM
To: <de...@tuscany.apache.org>
Subject: Re: svn commit: r834683 - in
/tuscany/java/sca/modules/endpoint-zookeeper
> On Tue, Nov 10, 2009 at 9:38 PM, <rf...@apache.org> wrote:
>> Author: rfeng
>> Date: Tue Nov 10 21:38:58 2009
>> New Revision: 834683
>>
>> URL: http://svn.apache.org/viewvc?rev=834683&view=rev
>> Log:
>> Start to add an Apache ZooKeeper based SCA domain registry
>>
>
> What are you thinking about for this? I've no issue with having
> multiple impls but as none of the endpoint registry impls have been
> finished yet it would be good to work together on getting one that
> works well - should that be on this one now?
>
> ...ant