On Mon, Jul 13, 2009 at 20:28, Arvind Gupta<arvind.bernaulli(a)gmail.com> wrote:
Hi Thomas
-
How you will be able to share it with Non-Xwiki instance?
For the purely technical part In JAVA you will just need to reuse APIs
you need and jgroups, you can directly reuse the component itself
(plus it's dependencies ObservationManager and ComponentManager) for
example. I seen there is a port of jgroups in .Net called GCT but i
seems dead did not looked much at it yet. Then for any client to
really receive events from an XWiki instance it mainly depends on the
configuration of jgroups which has membership management.
If it's important to support a large number of languages, I think JMS
is better since ActiveMQ (
http://activemq.apache.org/) "supports a
variety of Cross Language Clients and Protocols from Java, C, C++, C#,
Ruby, Perl, Python, PHP ".
Note that we can write a jgroups based module now since it's the
easiest for inter-XWiki/JAVA for the first target which is clustering
and latter a JMS based one or any other since nobody is supposed to
directly call the module so you can change it easily without touching
anything else in XWiki, you can even imagine having several event
distribution modules at the same time (like one basic for inter-XWiki
and one readonly with larger clients languages support).
-arvind
On Mon, Jul 13, 2009 at 7:45 PM, Thomas Mortagne
<thomas.mortagne(a)xwiki.com>wrote;wrote:
Hi devs,
I'm currently working on a network event distribution system.
The goal is to be able to shared events across XWiki instance (or not
XWiki) of a same network groups.
There is two target:
- unique easy clustering channel: if every XWiki instance of a network
group share the events it's becoming easy to make sure all instance of
the same cluster are synchronized and not only the code which is using
default cache system
- a new push communication interface to know what append on a farm for
network administrator or for softs like XWord and XEclipse to easily
update pages list etc...
To summarize I plan to do a Remote Observation Manager module which
send events coming for Observation Manager and inject in it events
coming for the network.
See
http://dev.xwiki.org/xwiki/bin/view/Design/DistributedEvents for
more details (like events converters etc...).
For now my choice is on jgroups for the network part which is simple
to use, very configurable and well known. I looked at some other like
JMS or Hazelcast but after all, I think jgroups contains all i need
and is very light.
Would be great if some of you who has experience on this (or not)
could shoot with all remarks and suggestions.
I should be able to commit a first try based on jgroups this week on
sandbox.
Thanks,
--
Thomas Mortagne
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
--
Thomas Mortagne