[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Distributed Ruby/Threads/Rinda?

Enrique Comba Riepenhausen

5/12/2007 11:31:00 AM

Hello all,

Recently (to test my understanding of Ruby) I was rewriting a
middleware server software of my company that is written in Java
(J2EE) in Ruby.

I actually coded the core of the system and think it is pretty neat
in Ruby (and much cleaner by the way).

The problem I am facing now, having the core system in Ruby, is the
API interfaces towards that core. The system is supposed to have a
layer of different API's so that an application programmer can access
a service running inside the core. These API layer can be almost
anything (a telnet session, a http request, a SOAP or XML-RPC
request, etc, etc, etc).

In the Java implementation this is solved by having these API's
"talk" to the core in two ways:
- using JMS (Java Messaging Service), i.e. packaging an incoming
message into an JMS message and sending it to an incoming queue so
that it can be processed. This is used for async processing.
- directly calling an EJB that will process the incoming message and
reply with the output of the service run. This is done for snyc
processing.

Now my question would be the following:

How can I implement something like a JMS Queue in Ruby?
How can I make the core system be a daemon that accepts these
requests (either by a direct call to some class in the core or by a
messaging system?

Thanks a lot for the help in advance!

Cheers,

Enrique Comba Riepenhausen


1 Answer

Enrique Comba Riepenhausen

5/12/2007 1:11:00 PM

0

On 12 May 2007, at 14:36, Nicholas Clare wrote:

>>
> Hi Enrique,
>
> I'm only starting to look at JMS now (in both Java and Ruby), but
> maybe you
> can use ActiveMQ (http://activemq.a...). It's a JMS message
> broker,
> but it also has support for Ruby clients.
>
> Hope it helps,
> Nick

Hey Nick,

thanks a lot, I'll take a look at it and let you know if it is what I
am looking for!

Thank you for the link :)