Rails or Tomcat - which one to be used for backgorund task?


I need advice on a decision that I have to make to decide whether I
should do background task in Rails or in Tomcat.

What I need to do is that a user of web app will create nnumber of text
messages which need to be sent to around 10,000+ users. Sms msg is
passed by the Ruby application to a http server running under Tomcat to
a java application that further passes the msg to sms gateway to be
deliverd to user.
I am planning to put msgs to be sent in a table in mysql by the ruby
application. Now I am not sure which is the reliable and better way to
send the msgs in the background - a background task in ruby or a
backgorund task in java. Also which is the best way to schedule and
start a background job in ruby/rails to handle such a large number of
records to be handled?

Thanks for the help in advance.

I dont think your challenge is where to run the background task as much
it is how to handle sending of large number of messages between systems.
would recommend you look at leveraging a messaging broker like ActiveMQ
will allow you to send messages asynchronously to a message queue that
then be picked up for processing by your java application with some JMS
client code.
have a look here for some example code on writing a JMS client in JRuby
would allow you to put messages onto the queue

Adam Denenberg's Blog: JMS JRuby Producer and Consumer.
That is
of course if you are using JRuby.

If you are using straight MRI ruby/rails then have a look at integrating
ActiveMQ with Activemessaging using the STOMP Protocol.