I'm trying to decide whether to implement an application in Ruby or Clojure. Two of the requirements involve parallel processing:
- The app must make parallel calls to fetch XML feeds and other types of data over the internet. Many such calls are made, and serializing the calls is inefficient.
- The responses to those calls ought ideally to be processed in parallel. Processing mainly means transforming raw XML down to a much smaller piece of structured data (a Ruby hash or Clojure map) and inserting that into a MySQL database or CouchDB database.
I know Ruby a lot better than Clojure but if this is the right sort of project for Clojure I am all for using it.
function seems ideal for these two requirements. I'm wondering if some Ruby library or feature had a similarly clean and easy way of doing parallel processing tasks like the above.