how to reduce number of threads for relay peer
I am trying to install a proper relay/rendezvous peer on a webserver that I rent (...cheaply) by a perfectly normal internet service provider. Unfortunately, the number of processes and native threads that one is allowed to create on such a server is much too low (namely 96) for starting relay/rendezvous services, in fact it already crashes during start-up when trying to create the peergroups (thread pools, etc.). I have a few questions related to this topic, and I have not found useful answers anywhere on the web:
(QUESTION 1) does this problem also happen if I would run on a Windows server? my provider offers me to reinitialize the server from current Suse 11.3 to Windows 2008, but I would first like to be sure that this solves the issue before porting the whole site.
(QUESTION 2) (...i think i already know the answer to this one) is there any way to force green threads on a linux JVM, instead of using native threads? as far as I understand, this is completely impossible since java 3 and later, all linux threads are native. Can I make java threads "green" by encapsulating the entire java application + JVM in a C++ program, using JNI? Would the jxta.jar stuff still work in that case (I mean, has that ever been tried)?
(QUESTION 3) how do other people operate relay peers, then? Surely you must all run into this kind of problems, or are you all spending big money on hugely oversized corporate servers, just to have a higher threadcount limit? I really don't need e.g. 32 processors and 10 terrabytes of server storage, but i would still be forced to pay for that.
By the way, my relay peer and entire JXTA-based P2P application are running nicely on local machines, so that does not seem to be the problem. However, without a public IP address somewhere in the world it is close to being useless.