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://lk.linkedin.com/in/afkhamazeez
>
> Lean . Enterprise . Middleware
>



-- 
*Anjana Fernando*
Technical Lead
WSO2 Inc. | http://wso2.com
lean . enterprise . middleware
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to