Hi Raymond, On Mon, Mar 12, 2012 at 10:03 PM, Raymond Feng <cyberf...@gmail.com> wrote:
> Hi, Dishara. > > Thank you for the interest. I'll elaborate more on the idea. Thank you very much for the detailed description. I went through the tuscany distributed runtime wiki once and got an understanding(may be have to go through again ;) ). Seems it got a good architecture to distribute the existing domain registry. > > There is a SCA domain concept in Tuscany, which is a service registry of > metadata about all the components and policies. A composite application can > have components running on different machines and they can be wired to each > other using remote bindings within the SCA domain. From the runtime > perspective, Tuscany uses the domain registry to resolve the wirings > between components. > > Tuscany has two types of implementation of the domain registry at this > point: > > 1) Local registry (which only knows the local endpoints). It can be > extended to use local files to describe remote endpoints in the node.xml. > 2) Multicast based registry on top of Tomcat Tribes or Hazelcast. > > So we probably not going to use either any of above two domain registry implementations, but the centralized registry. (which I assumed as another registry impl). > In a typical enterprise environment, the multicast doesn't work well due > to networking constraints. A more useful infrastructure is that we have > centralized registry with HA configurations (such as master/slave). Apache > ZooKeeper and Redis can be used for these purposes. The project will be > mostly implement the DomainRegistry SPI [2]. > > As far as I understand, we'll be using a suitable domain registry implementation to distribute among ZooKeeper nodes. And as the wiki stands, Tuscany will not go for JVM clustering, but a higher level clustering solution. This project will have following main targets. - Identify/implement how nodes (in the distributed environment) should be modeled to form a SCA component. - Integrate the nodes to meet the above requirement through a distributed platform (ZooKeeper). (And integration of nodes should be done by tuscany SCA bindings on top of Apache ZooKeeper nodes) At the end of the day this will create a bridge between ZooKeeper nodes and SCA components. Also +1 for Apache ZooKeeper. Please correct me if I have misunderstood the requirement or any feedback will be great full. This is a really interesting project. But I am not quite aware of the scope of this exactly in details . > [1] https://cwiki.apache.org/TUSCANYWIKI/distributed-runtime.html > [2] > https://svn.apache.org/repos/asf/tuscany/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/DomainRegistry.java > > Thanks, > Raymond > > On Mar 11, 2012, at 10:13 AM, Dishara Wijewardana wrote: > > > Hi all, > > This is regarding the project idea "Develop a distributed domain > registry using Apache ZooKeeper, Redis, or Memcache". > > > > I am interested in applying for this SoC program and I saw the JIRA[1] > project idea for Apache Tuscany. I have played with Tuscany and already > > had hands on experience with creating Tuscany SCA components in webapps > and using the callback method and etc (the framework is very helpful > > when communicating between front end and back end). > > > > I would like to work on the project "Develop a distributed domain > registry using Apache ZooKeeper, Redis, or Memcache" . > > These days I started looking in to Apache ZooKeeper and get familiar > with it. > > > > It will be nice if I can get to know some details(what is the expected > scope, what things need to be looked before hand, and etc) of this project > idea, so that I can prepare well for the project. > > > > > > Thanks > > /Dishara > > Thanks /Dishara