Maxed Threads, Random Drops, Terrible Performance

I have just finally deploying Openfire to a VMS that we rent, Everything was going well until we hit about the 10 user mark. From there on the server randomly dropped connection and was throwing execption errors left and right.

The server is linux based with a limit of 300 concurrent process. At startup of the openfire service it opened 45*, with 10* active connections it had over 220 open treads. Is this normal?

At this point after we reached the 10 user mark nothing else on the server would respond including simple commands like ls, mv, and such. We had to do a forced reboot of the server to gain access to it again.