Forgot to mention, Zweikopf comes as a Ruby gem and as a Clojure library. You should make a decision though wether you're running Ruby scripting container from Clojure or start Clojure runtime from Ruby...
On Mon, Sep 9, 2013 at 5:50 PM, Oleksandr Petrov <oleksandr.pet...@gmail.com > wrote: > I've been working with an application that written in Ruby and Clojure. > Nothing forbids you from using some messaging system for communication > between Ruby and Clj, although we required direct access to Ruby from > Clojure and vice versa. > > That's pretty much how Zweikopf was born: > http://github.com/ifesdjeen/zweikopf > > With Zweikopf you can call Ruby code from Clojure and Clojure code from > Ruby, given that Runtime was registered properly. You can convert any > Clojure data structure to Ruby one > and back, custom serialisation, circular dependency detection included. > > I would suggest not using any serialisation means if you intend running > both languages in a single process / JVM. That would add a significant > overhead and you won't be able to have > direct access to whatever class you may need at given time without > wrapping it into some RPC container. > > > > On Mon, Sep 9, 2013 at 4:47 PM, rdelcueto <rdelcu...@gmail.com> wrote: > >> Hey Ron, >> Thanks for your response. Digging deeper into my question... >> >> When I read about the Torquebox Immutant duet, I thought it was >> particularly interesting solution, because it was fairly easy to deploy and >> both processes would live inside a JVM environment. I was impressed by how >> Clojure data structures mapped to Ruby structures and vice-versa, it seemed >> to provide a very clean and idiomatic messaging platform. Plus it would >> provide tools for caching, clustering, and what not. Still I wasn't very >> keen on the JRuby subject, since It's known to have compatibility issues >> with certain gems. >> >> Yesterday while researching on the subject I found about ZeroMQ. Do you >> have any particular reason to use RabbitMQ over other messaging libraries? >> Are there any caveats to your interop model? >> How portable is deploying a site using a messaging solution such as >> RabbitMQ? >> >> I also found out about Google's Protocol Buffers, they seemed like a >> lightweight solution to pass language agnostic data structures through the >> messaging infrastructure. >> Do messages need to be encapsulated somehow, or is this actually >> unnecessary? How it's done in your case? >> >> Regarding security and sensible information interop; Should messages be >> encrypted? Should they be encrypted as a whole message or partially (only >> sensible data)? >> What are the performance implications of this pipeline? Is the overhead >> and footprint of such setup (Ruby + Messaging Broker + ClojureJVM) big >> enough, for it to be worth thinking on writing everything in Clojure (using >> the Luminus framework)? >> >> >> On Monday, September 9, 2013 8:10:41 AM UTC-5, Ron Toland wrote: >>> >>> At Rewryte, we use Rails for the web frontend and Clojure for the data >>> processing backend for exactly the reasons you described. >>> >>> We use RabbitMQ to communicate between the two. This maintains >>> separation between the two apps (no JRuby required), and lets us scale them >>> both independently, while taking advantage of each language/framework's >>> strengths. >>> >> -- >> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clojure@googlegroups.com >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+unsubscr...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> > > > > -- > alex p > -- alex p -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.