I'm building an app that will essentially be a web service client. It
will listen for requests from our other internal applications and then
make calls to the proper service, reformatting the data before
returning it to the requesting application.

In the past, I've done this by running a web app via WEBrick or
mod_ruby. Our internal application hits a URL with the data required
for the service request, the client class is instantiated by the
server (be it WEBrick or apache), and the request is handled with
cookies being saved/loaded as needed for session based authentication.

Is there a more accepted way to handle this? Something where the web
service client would be always running and somehow listening for a
request? I may just stick with what we're currently doing, but I'd
like to know what my Ruby options are and what others are using in
similar situations.

Thanks.
Jeremy