Well - I couldn't resist to write a small test-programm.
ENV:
- linux 2.6.5
- j2sdk 1.4.2-beta-b19
- 256 MB RAM, 512 MB swap
Tried to create 3000 (lean) threads, resultet in a few more than 2000 threads being created, then: OutOfMemoryError. This didn't change mentionable by using -server -Xms -Xmx switches. A small benefit was encountered by freeing as much ram as possible (run from console, no X, no Mozilla

2024 -> 2060 Threads.
Maybee I will test it on my desktop, with 1GB RAM and 2GB swap
If your Hardware allows, or the users don't use your server simultanously, it might work

.
You could use a Threadpool to prevent a Thread-overrun.
But all in all, I would use a real rdbms, if possible.
update: ENV:
- linux 2.6.5
- j2sdk 1.4.2_02-b03
- 1 GB RAM, 2 GB swap
created 54.000 Threads without problem
64.000 Threads: Out of Memory.
(edit post revisited)
shame on me! Most of the Threads had finished, before the last one was started
What a luck, nobody responded till now!
Either nobody was interested.
Or everybody was too impressed.
Here is a more conservative result for the 1GB desktop:
3300 Threads running simultanously.
Conclusio: Make a quick 'n' dirty test, but not too dirty.
[ May 18, 2004: Message edited by: Stefan Wagner ]
[ May 18, 2004: Message edited by: Stefan Wagner ]
[ May 18, 2004: Message edited by: Stefan Wagner ]