I have a few java programs, Appserver1 and Appserver2, which handle command line arguments to external programs, and VocsServer, an intermediary to the MySql database.
These programs are always supposed to be running and waiting to receive requests. However, at seemingly random times they stop receiving requests. E.g. when one of my programs makes a database request, it just hangs because the VocsServer has not received the request.
The thing is, all these processes are still running. Nothing appears to have changed, but they stop working. The only thing that fixes them is killing the processes and running them again.
What could be causing them to fail?