I hope Rails becomes mutli-threaded in a not-to-distant future release. That would relieve much of the criticism of Rails due to its single threadness. In reading Dave Thomas' book, Agile Web Development with Rails, 2nd ed, section 27.2, page 617, he indicates the way to scale Rails is to have a front end HTTP proxy server that sends rails requests to back end rails processes. In the next paragraph, he refers to these processes as application servers. I understand this to mean each rails implementation runs on its own "box." If my understanding is not correct, stop me now and set me straight!
However, if my basic understand is basically correct, this seems like a rather expensive approach of having to add a "box" everytime the system slows down.
Here is my question, can the single thread issue be solved by running multiple rails instances on a single powerful box using some level of Virtualization? Please follow this link to Wikipedia's section on Virtualization for more info: Virtualization - Wikipedia. If this can be done, does anyone know what level/kind of virtualizations is required?
Any wisdom that you can provide would be much appreciated.
Thanks again!