One member joining multiple groups is not something that is generally done. This means that such a node is a member of multiple clusters. However, even in the WSO2 clustering design, we have special members who are group management agents, who join multiple groups for special purposes. ELB is such a member. However, we cannot make that generic where a node joins multiple clusters. Looks like this is something specific to your use case, and such specific requirements cannot be incorporated into a generic API.
Message sending between members is not an issue; the API will allow you to send it to either a selected group of members or the cluster (all members). If you are expecting a response to a message, then there needs to be some correlation logic which will correlate the response to the request. For such a case, we need each message to carry a UUID. Azeez Azeez On Thu, Jul 4, 2013 at 12:06 PM, Anjana Fernando <[email protected]> wrote: > Hi Azeez, > > In your solution, how would a specific member be joining a group, that is > how will he part of a specific cluster domain, and then basically, how will > he be receiving messages destined for him, either direct peer-to-peer ones > or broadcast messages. > > Cheers, > Anjana. > > > On Wed, Jul 3, 2013 at 7:37 PM, Afkham Azeez <[email protected]> wrote: > >> >> >> >> On Sun, Jun 23, 2013 at 7:38 PM, Manoj Kumara <[email protected]> wrote: >> >>> Hi Azeez, >>> >>> +1 for the approach. >>> >>> As we discussed the concept of Group will be useful during >>> the implementation of 'Operations Center'. Based on current requirements >>> what we need is to discover the members of the group and to send cluster >>> messages to selected set of members. I think it will be possible with the >>> requirements given by Anjana. >>> >> >> In the case of Operations Center, it is not part of any cluster & sits >> outside. So the group in OC will be separate from the clustering API. >> Actually, OC will not be using the clustering API, but the manager nodes in >> each cluster will be using this API. >> >> >>> >>> Thanks, >>> Manoj >>> >>> Best Regards.. >>> >>> >>> Manoj Kumara >>> Software Engineer >>> WSO2, Inc.; http://wso2.com >>> >>> Twitter: http://twitter.com/ManKuma >>> Mobile: +94713448188 >>> >>> >>> On Sun, Jun 23, 2013 at 10:36 AM, Anjana Fernando <[email protected]>wrote: >>> >>>> Hi Azeez, >>>> >>>> We basically need a concept of a Group, where we can discover members >>>> of that specific group, send messages between peers, send broadcast >>>> messages to all the members, and also get group member notifications, such >>>> as a member arriving to a group, and a member leaving. >>>> >>>> A single server should be able to join multiple Groups basically, with >>>> a given name, I guess this is the same concept of domains we have in the >>>> current clustering API. This is required when a single server can act >>>> multiple roles, so a server can join the groups it require. >>>> >>>> Also another requirement that is needed is, we need to be notified when >>>> a specific group acquires a specific number of group members. This can be >>>> either implemented using a blocking method (with a timeout possibly) which >>>> waits for a specific number of members to arrive, or by registering a >>>> callback. This type of functionality is required for a scenario like, when >>>> scheduling tasks, we need a specific number of servers to be startup up, to >>>> spread the tasks throughout the cluster, without giving all the tasks to >>>> the 1'st server that starts up, I'm sure, this requirement would arise for >>>> other components also. >>>> >>>> Please check for the Group API ([1],[2] I've created for the >>>> coordination component to get the above functionality (ignore the >>>> "clearGroupMessages" method there). There, in [2], for "onPeerMessage", I >>>> guess it's useful for us to get the member id who would have sent the >>>> message. Same for "onGroupMessage", and also, there we could possibly >>>> return a result from that node, and give a accumulated result to the >>>> sender, which I guess we already do in the current clustering API. >>>> >>>> [1] >>>> https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.0.0/components/coordination/org.wso2.carbon.coordination.core/4.0.5/src/main/java/org/wso2/carbon/coordination/core/sync/Group.java >>>> [2] >>>> https://svn.wso2.org/repos/wso2/carbon/platform/branches/4.0.0/components/coordination/org.wso2.carbon.coordination.core/4.0.5/src/main/java/org/wso2/carbon/coordination/core/sync/GroupEventListener.java >>>> >>>> Cheers, >>>> Anjana. >>>> >>>> >>>> On Sun, Jun 23, 2013 at 9:50 AM, Afkham Azeez <[email protected]> wrote: >>>> >>>>> Folks, >>>>> Please let me know through this mail thread if you require any new >>>>> clustering APIs. It would be good if you could give the required >>>>> method signature or describe the scenarios you need to be covered. >>>>> >>>>> Azeez >>>>> >>>>> -- >>>>> Afkham Azeez >>>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>>> Member; Apache Software Foundation; http://www.apache.org/ >>>>> >>>>> email: [email protected] cell: +94 77 3320919 >>>>> blog: http://blog.afkham.org >>>>> twitter: http://twitter.com/afkham_azeez >>>>> linked-in <http://twitter.com/afkham_azeezlinked-in>: >>>>> http://lk.linkedin.com/in/afkhamazeez >>>>> >>>>> Lean . Enterprise . Middleware >>>>> >>>> >>>> >>>> >>>> -- >>>> *Anjana Fernando* >>>> Technical Lead >>>> WSO2 Inc. | http://wso2.com >>>> lean . enterprise . middleware >>>> >>> >>> >> >> >> -- >> *Afkham Azeez* >> Director of Architecture; WSO2, Inc.; http://wso2.com >> Member; Apache Software Foundation; http://www.apache.org/ >> * <http://www.apache.org/>** >> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >> * >> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >> * >> * >> *Lean . Enterprise . Middleware* >> > > > > -- > *Anjana Fernando* > Technical Lead > WSO2 Inc. | http://wso2.com > lean . enterprise . middleware > -- *Afkham Azeez* Director of Architecture; WSO2, Inc.; http://wso2.com Member; Apache Software Foundation; http://www.apache.org/ * <http://www.apache.org/>** email: **[email protected]* <[email protected]>* cell: +94 77 3320919 blog: **http://blog.afkham.org* <http://blog.afkham.org>* twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> * linked-in: **http://lk.linkedin.com/in/afkhamazeez* * * *Lean . Enterprise . Middleware*
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
