I've been testing RoR on a Windows server backed by MS SQL for a couple
of days. Yesterday, I was trying some automated tests, with this setup:
- 10 Mongrels on ports 4000-4009 on the server (Windows 2000 AS + MS
- No other webserver/balancer/proxy/whathaveyou
- 10 concurrent timed wget scripts running on my laptop requesting 1000
pages from each of the Mongrels on the server, the pages were fetching
an item with quite a few relating tables from the db.
Observing the task manager on the server, I witnessed each of the
ruby.exe processes die one after the other, that is, an overuse of cpu
time compared to the other yet-not-dying ruby.exe processes, and what
appeared to be memory leaking.
The point at which they died varied a lot, from failing on first
request to failing after hundreds of sound responses.
I tried, then, with 10 WEBrick servers instead of the 10 Mongrels, with
the exact same result.
Have you guys tried something similar? And is there any way for me to
find out where the processes fail? I mean, whether it's inside one of
my Rails scripts, inside the ado.rb mssql adapter, inside Rails logic,
Thanks in advance for any input,