On Nov 24, 6:41 pm, dokondr <[EMAIL PROTECTED]> wrote:
> Any ideas how Clojure can be used for distributed concurrent
> applications ?
> To my mind it should be possible to implement in Clojure mechanism
> similar to Erlang light-weight processes running on distributed
> 'nodes' that can be addressed by 'ports' to send them 'commands'.
> How this can be done with Clojure 'agents'?
> An obvious solution would be to create an 'agent proxy' on every node
> that will maintain a list of its agents and will forward (send ...)
> messages to other nodes, as well as receive messages addressed to its
> own agents from remote nodes and then deliver these messages to
> correct agents.
> Addressing scheme and message protocols should be developed as well.
> Other ways to provide for communication between nodes?
There's JMS:
http://en.wikipedia.org/wiki/Java_Message_Service
https://mq.dev.java.net/
http://joram.objectweb.org/
http://activemq.apache.org/
XMPP:
http://en.wikipedia.org/wiki/Xmpp
http://www.igniterealtime.org/projects/index.jsp
JXTA/Shoal:
http://en.wikipedia.org/wiki/Jxta
https://shoal.dev.java.net/
JINI:
http://en.wikipedia.org/wiki/Jini
http://incubator.apache.org/projects/river.html
DHTs like Pastry:
http://freepastry.org/
JGroups:
http://www.jgroups.org/javagroupsnew/docs/index.html
Terracotta:
http://www.terracotta.org
Jinterface:
http://www.erlang.org/doc/apps/jinterface/
NetKernel:
http://www.1060.org/
and more. All useful from Clojure.
Given the diversity, sophistication, maturity, interoperability,
robustness etc of these options, it's unlikely I'm going to fiddle
around with some language-specific solution.
That said, I have been thinking about putting a simple wrapper API
around queues that would work both locally and over something like
JMS.
Rich
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---