Re: Dropped Sockets?
Joshua Jung wrote:
Hi, I've built a client-server program that is designed to test server
load on a brand new Mac Pro machine of ours.
There are two programs: a server and a client generator. The server sits
idly waiting for connections (done in SSL), and the client just generates
a ton of clients at evenly spaced intervals (like every 100 milliseconds
or so).
For some reason, on the Mac machine, I get random "SocketConnection:
Socket Closed" errors when I try to do write operations. I can not trace
down any rhyme or reason as to why this is happening and nearly went crazy
trying to debug my code... and then I tried the same code on my Dell
Laptop running Ubuntu... worked like a charm!
Why would I be losing sockets like this?
The first thought that comes to mind is differing socket implementations
on mac and linux, the same goes for the jvm. You should try to isolate
what causes the problem.
First you should try to figure out if its an os problem or a
jvm/language problem.
- can you create a similar program on the mac in a different language,
preferably one using the kernel api directly, such as c/c++. If the
problem persists its an os problem, if not, its a jvm problem.
- is there a different jvm you could try on the mac. if the problem
persists it its probably a language problem (such as a bad
design/implementation decision or perhaps a faulty jvm conformance test.).
You could also try to reduce the number of running clients/open sockets
on the mac, to see if the problem persists. An that way try to find a
way around the problem
tom